pytest+allure执行自动化测试

与allure搭配使用

import pytest, allure    #导包

@allure.feature('报告一级标题')  
@allure.story('报告二级标题')   

class XXX(object):
    def setup_class(self):
    #做登录,初始化数据等
        pass
    def teardown_class(self):
    #做清数据,退出登录等
        pass
        
    @pytest.allure.severity(pytest.allure.severity_level.NORMAL)  #定义用例的级别
    @pytest.allure.testcase('报告中用例标题')
    def test_用例名(self):
        pass
        assert xxx    #断言
        
    @pytest.allure.severity(pytest.allure.severity_level.MAJOR)
    @pytest.allure.testcase('报告中用例标题')  
    def test_用例名(self):
        pass
        assert xxx   #断言

执行用例逻辑

1、执行用例名为test_XXX.py的用例
2、在单个test_XXX.py文件中,只需要写一个def setup和一个def teardown, def test_XX,可以有多个

-如果选择执行class,那么执行逻辑是:def setup + def test_1+def test_2+…def test_n+ def teardown
-如果选择执行单个def,那么执行逻辑是:def setup + def test_1+ def teardown
3、使用命令执行测试用例:
pytest [目录/用例文件] --执行某个目录下的所有用例,或者执行某个用例文件

allure报告

环境:Windows10 + pytest + allure

  1. 一 安装allure

官网下载地址:https://docs.qameta.io/allure/#_installing_a_commandline
建议直接选择手动安装吧,简单粗暴,下载-》解压-》配置环境变量-》验证
pytest+allure执行自动化测试_第1张图片
选择zip包
pytest+allure执行自动化测试_第2张图片
配置path环境变量, allure.bat 所在的路径 C:\Users\xxxxx\AppData\Local\Programs\allure-2.12.1\bin
pytest+allure执行自动化测试_第3张图片
验证安装成功,cmd页面用命令: allure --version
pytest+allure执行自动化测试_第4张图片

  1. 二 执行测试用例

生成测试报告前,要先执行测试用例,得到一些测试结果数据
pytest+allure执行自动化测试_第5张图片
–alluredir后面是指定测试结果数据存放的位置
pytest+allure执行自动化测试_第6张图片pytest+allure执行自动化测试_第7张图片

  1. 三 生成html报告

生成即刻阅读的报告(因为Ctrl + C退出后就访问不了了)
cmd打开明星提示符:
allure serve result是执行完测试用例时产生的测试数据目录
测试报告的访问会日志中会打印出来,这个命令会自动打开测试报告的网页,但一直显示加载,要想访问报告,使用日志中给出来的IP和端口,貌似每次会变
地址:http://ip:port/index.html
pytest+allure执行自动化测试_第8张图片
报告解读
pytest+allure执行自动化测试_第9张图片
pytest+allure执行自动化测试_第10张图片
pytest+allure执行自动化测试_第11张图片
鼠标放在绿框上可以看到详情
pytest+allure执行自动化测试_第12张图片
pytest+allure执行自动化测试_第13张图片
生成本地的报告(保存下来多次查看)
allure generate [directory-with-results] -o [directory-with-report]
在这里插入图片描述
到指定的目录查看报告
pytest+allure执行自动化测试_第14张图片
选中报告右键->open in browser即可查看报告
pytest+allure执行自动化测试_第15张图片

----未完待续

你可能感兴趣的:(pytest+allure执行自动化测试)