- pytest框架与自动化测试应用
- 房荔枝 梁丽丽编著
- 428字
- 2023-08-31 20:25:55
1.5 执行的查找原则和测试类及测试方法的命名
pytest根据一定的规则搜索并运行测试。标准的测试搜索规则如下:
(1)从一个或多个目录开始查找,可以在命令行指定文件名或目录名。如果未指定,则使用当前目录。
(2)在该目录和所有子目录下递归查找测试模块。
(3)测试模块指文件名为test_*.py或*_test.py的文件。
(4)在测试模块中查找以test_开头的函数名。
(5)查找名字以Test开头的类,其中,首先筛选掉包含__init__函数的类,再查找以test_开头类中的方法。
以上是标准的测试搜索规则,也可以更改它们,我们将在第12章讲解如何更改测试搜索的规则。
注意:所有包都要有__init__.py文件。pytest可以执行由Unittest框架所写的用例和方法。
通常测试模块(文件)、测试类、测试函数和方法的命名都遵循这个原则。如果不遵守这个原则就不会被搜索到,便不会有预期的效果。
我们举例说明,如图1-13所示。
(1)在test_first.py文件中新建一个测试方法。
(2)命名为t_2,输入打印语句。
(3)右击选择以pytest方式执行。
(4)执行结果如图1-13所示,只执行了一种方法。
图1-13 不以test_开头的测试方法不执行