一、通过pycharm下创建一个基于虚拟环境的项目
二、pytest安装
方法1:pycharm工具下安装pytest
方法2:pip安装pytest
#默认源安装
pip install -U pytest
#华为镜像源安装
pip3 install pytest -i https://mirrors.huaweicloud.com/ --trusted-host mirrors.huaweicloud.com/
#查看版本
pytest --version
方法3:通过requirements.txt文件批量安装pytest及其插件
在项目的根目录下新建文件requirements.txt,在文件中把需要的插件名字写进去,例如
requirements.txt
pytest
pytest-html
pytest-xdist
pytest-ordering
pytest-rerunfailures
allure-pytest
pyyaml
requests
然后通过如下命令进行安装和查看插件安装结果
#批量安装第三方库
pip install -r requirements.txt
#查看安装结果和版本
pip freeze
三、一个pytest的例子
创建一个文件test_start.py,内容如下
#!/usr/bin/env python
# -*- coding: utf-8 -*-
def func(x):
return x + 1
def test_case1(): #函数需要以test_开头
assert func(13) == 15
class TestClass: #类名也需要以Test开头
def test_case2(self): #类中的方法名也需要以test_开头
x = "this"
assert "h" in x
def test_case3(self):
x = "hello"
assert hasattr(x, "check")
用例执行方法:
(1) 命令行方式:在cmd下直接执行 pytest
即可运行测试用例。
(2)代码方式:在任意一个py文件中的main中调用pytest.main(),例如:
if __name__ == '__main__':
pytest.main() # 直接写在py文件中运行,()里可以填写运行的参数,也可以不写
(3)在pycharm工具上运行
在settings里面设置单元测试框架为Pytest
在项目、文件夹或文件上右键,选择pytest方式运行。
四、Pytest用例的规则
pytest是自动发现、收集、执行测试用例的,当在哪个目录下执行pytest.main()指令,那么pytest就会自动发现当前目录下所有符合规则的py文件,将这些文件当成测试用例文件。pytest根据以下规则去发现用例:
1、模块名以 test_*.py
文件和*_test.py
(即以test_开头或_test结尾的py文件)
2、以 test_ 开头的函数
3、以 Test 开头的类,不能包含 init 方法
4、以 test_ 开头的类里面的方法
5、所有的包 package 必须要有__init__.py 文件
6、pytest是根据规则按顺序匹配:模块 > > 类名 > > 方法名,同一个py文件中&#x