python修改python unittest的运行顺序
正常是一个测试类中按函数名字运行,
下面修改成直接按每个测试方法的代码顺序执行
文件 unittest_util.py
import time
import unittest
from app.utils.utils_ydf import mixins skip = unittest.skip class TestCase(mixins.LoggerMixin, unittest.TestCase): # 不需要日志的人,可以不继承第一个类。
@classmethod
def tearDownClass(cls):
cls.logger.debug('---------------------------------所有用例完成-----------------------------')
time.sleep(200000) def run(test_class):
"""
测试用例执行顺序使用函数的所处行数来,即直上至下,不按照默认的函数名字来执行
:param test_class: 测试用例的类名
:return:
"""
func_first_no = lambda f: getattr(test_class, f).__code__.co_firstlineno def func_first_no_cmp(funa, funb):
if func_first_no(funa) > func_first_no(funb):
return 1
elif func_first_no(funa) == func_first_no(funb):
return 0
else:
return -1 loader = unittest.TestLoader()
loader.sortTestMethodsUsing = func_first_no_cmp
case1 = loader.loadTestsFromTestCase(test_class)
suite = unittest.TestSuite([case1, ])
unittest.TextTestRunner(verbosity=2).run(suite)
# unittest.main(testLoader=loader, verbosity=2) # 也可以
使用方法示例,import 这个文件
class _Test(unittest_util.TestCase):
@classmethod
def setUpClass(cls):
cls.deploy_ydf = HotelFaresDeploy('ydf')
cls.deploy_test = HotelFaresDeploy('test') @unittest_util.skip
def test_run_all_thread(self):
"""重新运行所有"""
self.deploy_test.run_pyhton_file(ctrip)
self.deploy_test.run_pyhton_file(elong) # @unittest_util.skip
def test_query_process_thread(self):
"""查询所有thread名称的进程"""
self.deploy_test.query_process('_thread') if __name__ == '__main__':
unittest_util.run(_Test)
这样就是按代码顺序执行了,不需要在函数上加个数字做记号了。
谁写在上面就先执行谁。
python修改python unittest的运行顺序的更多相关文章
- 翻译文章“AST 模块:用 Python 修改 Python 代码”---!!注意ironpathyon未实现此功能
https://github.com/upsuper/blog/commit/0214fdd084c4adf2de2ed9912d644fb59ce13a1c +Title: [翻译] AST 模块: ...
- 第二种方式,修改python unittest的执行顺序,使用猴子补丁
1.按照测试用例的上下顺序,而不是按方法的名称的字母顺序来执行测试用例. 之前的文章链接 python修改python unittest的运行顺序 之前写的,不是猴子补丁,而是要把Test用例的类名传 ...
- 一文搞懂Python Unittest测试方法执行顺序
大家好~我是米洛! 欢迎关注我的公众号测试开发坑货,一起交流!点赞收藏关注,不迷路. Unittest unittest大家应该都不陌生.它作为一款博主在5-6年前最常用的单元测试框架,现在正被pyt ...
- Pycharm上python运行和unittest运行两种执行方式解析
前言 经常有人在群里反馈,明明代码一样的啊,为什么别人的能出报告,我的出不了报告,为什么别人运行结果跟我的不一样啊... 这种问题先检查代码,确定是一样的,那就是运行姿势不对了,一旦导入unittes ...
- python 单元测试(unittest)
自动化测试在各大互联网公司全面铺开,那么针对于自动化测试好的设计思想有哪些呢?.....今天我们共同探讨下Unittest之数据驱动(DDT是 “Data-Driven Tests”的缩写). 对于接 ...
- Python单元测试框架unittest之深入学习
前言 前几篇文章该要地介绍了python单元测试框架unittest的使用,本篇文章系统介绍unittest框架. 一.unittest核心工作原理 unittest中最核心的四个概念是:test c ...
- 第二个UI脚本--Python+selenium之unittest+HTMLtestRunner及python的继承
前面有一篇对于常见元素的识别和操作的python自动化脚本,这一篇就接着聊下python的类继承,已经它的第三款unittest框架,和报告收集包HTMLtestRunner的应用. 还是直接上代码吧 ...
- Python3 Selenium自动化web测试 ==> 第一节 起始点之Python单元测试框架 unittest
前置步骤 Python版本:3.6.4 selenium版本:3.11.0 >>> import selenium >>> help(selenium) IDE:P ...
- python 修改文件的创建时间、修改时间、访问时间
目录 python 修改文件创建.修改.访问时间 方案一 方案二(无法修改文件创建时间) python 修改文件创建.修改.访问时间 突如其来想知道一下 python 如何修改文件的属性(创建.修改. ...
随机推荐
- Hive Tuning(五) 标准调优清单
Hive的标准调优清单,我们可以对照着来做我们的查询优化!
- java中GZIPOutputStream 流的使用(EOFException)
GZip流的使用非常多人都出现了以下的异常:java.io.EOFException: Unexpected end of ZLIB input stream.或者出现压缩后的数据不全的情况(就是压缩 ...
- android 自定义流布局。实现热门标签。开源库SimpleFlowLayout
前言 实际项目中需要实现一个 热门搜索 的栏目,类似下图: 由于 子项(子view) 中的文字是可变的,一行能显示的 子项 的个数也无法确定.需要支持自动换行和计算位置. 开源类库 我自己写了个 自定 ...
- Redis客户端连接
Redis接受上配置监听TCP端口和Unix套接字客户端的连接,如果启用.当一个新的客户端连接被接受,如有以下操作进行: 客户端套接字置于非阻塞状态,因为Redis的使用复用和非阻塞I/O操作. TC ...
- 升级 Elasticsearch 集群数量实战记录
搜索引擎 升级 Elasticsearch 集群数量实战记录 现在线上有一个elasticsearch集群搜索服务有三台elasticsearch实例(es1.es2.es3),打算将其升级为5台(增 ...
- elasticsearch6.4 memory locking requested for elasticsearch process but memory is not locked
[2018-10-18T05:28:57,713][ERROR][o.e.b.Bootstrap ] [node-45] node validation exception[1] bootstrap ...
- Android NDK: Application targets deprecated ABI(s): armeabi Open File
Error:(81) Android NDK: Application targets deprecated ABI(s): armeabi Error:(82) Android NDK: Suppo ...
- html5与css3学习实践--基础的内容划分标签
从位置上划分出网页的区域以后,就需要用到网页的内容标签了,比如<article>.<aside>.<nav>.<p>.<h1>等.网页中,这 ...
- Sword STL之仿函数概念介绍
--介绍 函数和类似函数的对象(仿函数)遍布STL.关联容器使用它们来使元素保持有序:find_if这样的算法使用它们来控制它们的行为: 如果缺少它们,那么比如for_each和transform这样 ...
- KindEditor使用初步
KindEditor是一套开源的HTML可视化编辑器,非常适合在CMS.商城.论坛.博客.Wiki.电子邮件等互联网应用上使用,目前在国内已经成为最受欢迎的编辑器之一.目前最新版本为4.1.9,详见h ...