安装pytest:
命令:pip install pytest
安装好后是这样的:
安装pytest-html:
命令:pip install pytest-html
安装完成后:
pytest的命名规则
Pytest单元测试中的类名和方法名必须是以test开头,执行中只能找到test开头的类和
方法,比unittest更加严谨
如下:
正确的方式:(能查到数据)
错误的方式:(查不到数据)
除了这种还有一种也可以:
如下:指定一下就行
pytest生成自带的html测试报告
(需要先下载,我下载的方法在上边^)
代码如下:
pytest.main(["--html=./report.html","模块.py"])
之后点击生成的html,用浏览器打开
若只向跑一个
如下(我只跑test3)
断言:
测试报告如下:
pytest调用语句
语句: pytst.main(['-x','--html=./report.html','t12est000.py'])
-x出现一条测试用例失败就退出测试
-s:显示print内容
-x:
. 点号,表示用例通过
F 表示失败 Failure
E 表示用例中存在异常 Error
扩充:
跳过:
使用@pytest.mark.skip()跳过该用例(函数)
测试报告:
文件读取:
xml:
csv:
allure
Allure是一款轻量级并且非常灵活的开源测试报告框架。 它支持绝大多数测试框架,
例如TestNG、Pytest、JUint等。它简单易用,易于集成。
配置变量:
之后进入命令窗口,输入allure
这样就是配置成功了
安装allure:
命令:pip insert allure-pytest
allure常用的几个特性
@allure.feature # 用于描述被测试产品需求
@allure.story # 用于描述feature的用户场景,即测试需求
with allure.step(): # 用于描述测试步骤,将会输出到报告中
allure.attach # 用于向测试报告中输入一些附加的信息,通常是一些测试数据,截图等
案例:
@allure.feature # 用于描述被测试产品需求
@allure.story # 用于描述feature的用户场景,即测试需求
案例:
with allure.step(): # 用于描述测试步骤,将会输出到报告中
allure.attach # 用于向测试报告中输入一些附加的信息,通常是一些测试数据,截图等
练习:
单元测试:通过读取csv/xml数据并且结合使用allure展示测试报告,验证开发中的
add()和reduct()操作(在@allure.story分别实现相加减)
xml:
csv: