用于重复测试的pytest插件

pytest-repeat的Python项目详细描述


pytest repeat是py.test的插件,它使 容易重复一次测试,或多次测试,具体次数。

LicensePyPITravisIssuesRequirements

要求

要使用pytest repeat,您需要以下先决条件:

  • python 2.7、3.4+或pypy
  • py.test 2.8或更新版本

安装

要安装pytest,请重复:

$ pip install pytest-repeat

重复测试

使用--count命令行选项指定所需的次数 要运行的测试:

$ py.test --count=10 test_file.py

py.test收集的每个测试将运行count次。

如果要将代码中的测试标记为重复多次,则 可以使用@pytest.mark.repeat(count)装饰符:

importpytest@pytest.mark.repeat(3)deftest_repeat_decorator():pass

如果要覆盖默认测试执行顺序,可以使用--repeat-scope 具有以下值之一的命令行选项:sessionmoduleclassfunction(默认值)。 它的行为类似于pytest设备的范围。

function(默认)作用域在执行下一个测试之前重复每个测试countrepeat次。 session作用域重复整个测试会话,即所有收集的测试执行一次,然后所有此类测试再次执行等等。 classmodule的行为类似,但重复测试集是来自类或模块的测试,而不是所有收集的测试。

重复测试直到失败

如果您试图诊断间歇性故障,运行相同的 反复测试直到失败。您可以在中使用pytest的-x选项 与pytest repeat一起强制测试运行程序在第一次失败时停止。 例如:

$ py.test --count=1000 -x test_file.py

这将尝试运行test_file.py 1000次,但一旦失败将立即停止 发生。

单元测试样式测试

不幸的是,pytest repeat不能与unittest.testcase测试类一起使用。 这些测试将只运行一次,而不管--count,并显示一个警告。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java集合属性值   java字符串==运算符是否比较引用?   java是否存在过太多的ListView或适配器?   json获取java中类路径中下载的文件   我可以用java代码解决数据库并发问题吗?   在多个线程中使用forEach()或使用forEach()和lambdas进行java集合迭代   java输出JFrame中的整个循环   java禁用高度详细的日志记录   java在没有特定属性的对象中访问模型的值   java Smack xmpp建立连接   处理过时域对象引起的并发问题的java策略(Grails/GORM/Hibernate)   java从ObservableList中提取元素   使用图像进行java相似图像搜索   java ListView和图像:我快疯了   在Java中,如何从毫秒时间戳中提取一天的周期?   java我需要这样的设计,但我面临两个问题   java如何获取JGoodies FormLayout中的单元格大小   Spring引导生成的java War文件未部署到Weblogic 12c