pytest学习--02 用例运行规则

用例设计原则:

  -文件名 以test_*.py文件和*_test.py开头

  -以test_开头的函数

  -以Test开头的类

  -以test_开头的方法

  -所有的包package 必须要有__init__.py文件

help帮助:

  1、查看pytest命令行参数,可以用pytest -h 或 pytest --help查看

python执行pytest用例有三种方法,以下三种方法都可以,一般推荐第一个:

-pytest

-pya.test

python -m pytest

如果不带参数,在某个文件夹下执行时,它会查找该文件夹下所有的符合条件的用例

执行用例的规则:

  1、执行某个目录下所有的用例

  pytest 文件名/

  2、执行某一个py文件下用例

  pytest 脚本名称.py 

  3、 -k 按关键字匹配

  pytest -k "myClass and not method"

这将运行包含与给定字符串表达式匹配的名称的测试,其中包括Python使用的文件名,类名和函数名 作为变量的运算符。上面的例子将运行

TestMyClass.test_somthing 但是 不运行 TestMyClass.test_method-simple

4、按照节点运行

  每个收集的测试都分配了一个唯一的nodeid,它由模块文件名和  后跟说明符组成,来自参数化的类名,函数名和参数,由::characters 分隔。

运行 .py模块里面的某个函数

  pytest test_mod.py::test_func

运行 .py模块里面,测试类里面的某个方法

  pytest test_mod.py::TestClass::test_method

5、标记表达式

  pytest -m slow 

将运行使用@pytest.mark.slow装饰器修饰的所有测试

6、从包里面运行

pytest --pyargs pkg.testing

这将导入 pkg.testing 并使用其文件系统位置来查找和运行测试

-X 遇到错误时停止吃的是

pytest -x test_class.py

从运行结果可以看出,本来有3个用例,第二个用例失败后就没有继续往下执行了。

--maxfail = num

pytest --maxfail = 1

当用例错误个数达到指定数量时,停止测试

 

7

posted @ 2021-11-16 19:15  GalaxyStar  阅读(119)  评论(0编辑  收藏  举报