用于重复测试的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第三方库


热门话题
使用linkedList的mergesort算法无法在Java中正确实现   java SpringMVC<mvc:resources/>SpringXML模式验证?   joptionpane的java尝试捕获错误   java实时动态地将表单提交的结果输出到JSP页面   Java下一行打印。作家   java向ArrayList添加新元素会导致覆盖所有以前插入的项的属性   println Java添加的神秘输出:一些经过评估,一些经过打印   swing出现错误:无法实例化java类型。awt。事件监听器   java无限while循环,而AsyncTask未完成   java Eclipse:更改ctrl+shift的块注释样式+/   java为什么在不尝试I/O的情况下,不可能检测到TCPsocket被对等方正常关闭?   java并行流函数占用更多时间   java非泛型类型在不指定类型参数的情况下扩展泛型类型   java Spring、Hibernate和嵌入式derby Jetty自动重新部署数据库连接问题   java如何将getBooks()中生成的值(ArrayList<Book>Books变量)放入onCreate方法?   jsp Java servlet未正确重定向   如果网络可用,java从服务器获取JSON   java如何调用ArrayList中的每个数组并按年龄对ArrayList进行排序?   java线程类的静态方法和本机方法是什么