pytest框架介绍

 一、pytest介绍

pytest是python的一种单元测试框架,与python自带的unittest测试框架类似,但是比unittest框架使用起来更简洁,效率更高。

它具有如下特点:

  1.非常容易上手,入门简单,文档丰富,文档中有很多实例可以参考

  2.能够支持简单的单元测试和复杂的功能测试

  3.支持参数化

  4.执行测试过程中可以将某些测试跳过,或者对某些预期失败的case标记成失败

  5.支持重复执行失败的case

  6.支持运行由nose, unittest编写的测试case

二、pytest的常用命令行选项

  1. -s   表示在终端中允许测试运行的时候输出某些结果,包括任何符合标准输出信息

  2. -v  输出的信息会更加详细,最明显的区别就是每个文件中的每个测试用例都占一行,测试的名字和结果都会显示出来,而不仅仅是一个点或字符

  3. -q(--quiet)  该选项的作用与-v的相反,他会简化输出信息,可以和--tb=line(仅打印异常信息的代码位置)搭配使用

  4. --tb=style  --tb=style选项决定会捕捉到失败时输出信息的显示方式,

          使用--tb=no屏蔽全部回溯信息

          使用--tb=line,它可以告诉我们错误的位置

          使用--tb=short,显示的回溯信息比前面两种模式的更详细

  5. --collect-only  使用--collect-only选项可以展示在给定的目录下哪些测试用例会被运行,可以在测试运行之前,检查选中的测试用例是否符合预期

  6. -m  标记(marker)用于标记测试并分组,以便快速选中并运行

  7. -x   正常情况下,pytest会运行每一个搜索到的测试用例,如果某个测试函数被断言失败,或者触发了外部异常,则该测试用例的运行就会到此为止,pytest将其标记为失败后会继续运行下一个测试用例。通常,这就是我们期望的运行模式。但是在debug时,我们会希望遇到失败时立即停止整个会话,这时-x选项就派上用场了

  8. --maxfail=num  -x选项的特点是,一旦遇到测试失败,就会全局停止。假设你允许pytest失败几次后在停止,则可以使用--maxfail选项,明确指定可以失败几次

  9. --lf(--last-failed)  当一个或多个测试失败时,我们常常希望能够定位到最后一个失败的测试用例重新运行,这时可以使用--lf选项

  10. --ff(--failed-first)  -ff选项与--last-failed选项的作用基本相同,不同之处在于--ff会运行完剩余的测试用例

  注释:以上详情请查看 https://www.cnblogs.com/zouzou-busy/p/11295444.html

三、pytest框架使用规则

  1.测试文件以test_开头(以_test结尾也可以)

  2.测试类以Test开头,并且不能带有 __init__ 方法

  3.测试函数以test_开头

  4.断言使用基本的assert即可,后接表达式 例子:assert 1 == 1

原文地址:https://www.cnblogs.com/666666pingzi/p/11506743.html