pytest 配置allure 插件 (测试报告生成)

allure插件

allure运行所需要的环境

  1. python需要安装 allure库
pip install allure-pytest
  1. 需要下载allure服务
    https://github.com/allure-framework/allure2
    下载完毕后需要加allure的bin路径配置到环境变量中
    查看是否成功配置
allure --version

image

1. allure生成测试报告

allure生成报告的过程是在运行pytest用例加入allure生成报告参数, 生成测试报告json文件, allure服务再读取json文件从而生成网页版测试报告

1.1 allure-pytest运行命令

--alluredi: 接收一个生成json报告的路径
--clean-alluredir:表示每次运行前会清理上一次的json报告

--alluredir  ./temp --clean-alluredir

1.2 allure服务读取json命令

./temp表示json报告的路径
-o: 接收一个生成html网页报告的路径
--clean:表示将上一次生成的网页报告进行清理

allure generate ./temp -o ./report --clean

那么运行代码如下:
allure服务我们可以使用os模块的system方法来执行dos命令

if __name__ == '__main__':

    pytest.main(["--alluredir", "./temp", "--clean-alluredir"])
    os.system("allure generate ./temp -o ./report --clean")

2. @allure.severity 设置用例优先级

@allure.severity可接收参数
blocker
critical
normal
minor
trivial
等不同的用例等级, 如果不修饰默认为normal
可修饰在用例方法上,类上,如果修饰在类上表示这个类所有用例优先级都是一样
image

3. @allure.label 设置用例作者

@allure.label("owner", "lantian")
class CreateAccountTest(TestCase):

    @pytest.mark.parametrize("name", ["张三", "李四", "王五"])
    def create_account_test(self, name):
        self.log_info("执行用例: 创建账户:{} .......".format(name))

allure报告:
image

4. @allure.title 设置用例标题

class CreateAccountTest(TestCase):

    @allure.title("创建用户")
    def create_account_test(self, name):
        self.log_info("执行用例: 创建账户:{} .......".format(name))

allure报告:
image

posted @ 2020-04-19 13:36  silence022  阅读(336)  评论(0)    收藏  举报