Appium [python] unittest 框架或者其他框架有像 testNG 类似的失败重跑机制么?

匿名 · 2016年10月13日 · 1899 次阅读

如果想利用 unittest 进行失败重跑应该怎么弄呢?

共收到 15 条回复 时间 点赞

重新再跑遍 case

推荐用 pytest ,一个插件就搞定失败重跑,而且可以兼容 unittest 用例。

就像 @chenhengjie123 所说的,用例继承 unittest.TestCase 来写,但是可以用 nose、py.test 等其他工具来执行,能很方便的扩展功能

匿名 #4 · 2016年10月13日

#2 楼 @chenhengjie123 嗯,看了一下 pytest,确实不错,正在熟悉中,多谢

匿名 #5 · 2016年10月13日

#3 楼 @jacexh pytest 和 nose 有点像,测试报告怎么搞,我用的是 HTMLTestRunner

#5 楼 @Tank007 没必要用 HTMLTestRunner,nose、py.test 会生成标准的 xml 格式的 xunit 测试报告,jenkins 等 CI 工具能解析这个 xml 报告,并生成 html

匿名 #8 · 2016年10月25日

@chenhengjie123 @jacexh 最近看了一下 pytest,没找到合适的失败重跑的方法,只有 pytest --lf 重跑上次失败的用例,感觉不是很好用,我的场景是这样的:如果某一个用例失败,可以对这个用例设置重跑次数,并且当场进行重跑,重跑完则跑下一个用例,目前有这样的 pytest 有这样插件么?

匿名 #9 · 2016年10月25日

找到插件

匿名 关闭了讨论 10月25日 15:51

#9 楼 @Tank007 请问一下是什么插件呢?

匿名 #12 · 2017年02月21日

#11 楼 @YahongGUO pytest-rerunfailures

你好,我目前不清楚 unittest 的用例如何使用 pytest 跑,是直接引用 pytest 框架运行 pytest.main()?但是又不知道怎么生成报告,还请指教下

匿名 #14 · 2017年05月27日
wagnxinghao 回复

用 pytest.main() 或者命令行 py.test 都可以,pytest 和 unittest 的发现机制是一样的,都是识别 test 开头的方法,具体用法你可以查看 pytest 的帮助文档

你好,我现在可以使用 pytest 执行命令成功了,但是无法生成测试报告,我是这样写的:
python test_x.py --html=/Users/huanshi/Desktop/html.log
代码提示:
None
passing a string to pytest.main() is deprecated, pass a list of arguments instead.
Module already imported so can not be re-written: flaky
Module already imported so can not be re-written: pytest_html

-- Docs: http://doc.pytest.org/en/latest/warnings.html
请问是哪里需要改动

匿名 #16 · 2017年05月28日
wagnxinghao 回复

执行方式不对,请命令行查看 pytest 的用法

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册