Pytest+Allure环境的搭建

Posted wanghuaqiang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Pytest+Allure环境的搭建相关的知识,希望对你有一定的参考价值。

参考博客

1. pytest的安装:

1.1. windows下:

pip install pytest

1.2. linux下:

pip install pytest

2. 安装pytest-allure-adaptor插件

2.1. windows下:

pip install pytest-allure-adaptor

3. allure的安装:

3.1. windows下:

前情提示: allure是基于Java的一个程序,需要Java1.8的环境,没有安装需要去安装一下。

Windows下不能直接安装,点击此链接下载压缩包

下载之后,将压缩包解压到一个磁盘中,我这里用的是F

 
技术分享图片
image

3.2. 配置allure的环境变量

 
技术分享图片
image
 
技术分享图片
image

点击确定,保存。这样就可以通过CMD使用allure命令

3.3. 编写测试文件

pycharm新建一个test_demo.py文件,代码如下:

import allure


@allure.MASTER_HELPER.feature("测试Dome")
class TestDome(object):

    @allure.MASTER_HELPER.step("定义被测函数")
    def func(self, x):
        return x+1

    @allure.MASTER_HELPER.story("被测场景")
    @allure.MASTER_HELPER.severity("blocker")
    @allure.MASTER_HELPER.step("断言结果")
    def test_func(self):
        # with allure.MASTER_HELPER.step("断言结果"):
        allure.MASTER_HELPER.attach("预期结果", "{}".format(self.func(3)))
        allure.MASTER_HELPER.attach("实际结果", "{}".format(5))
        assert self.func(3) == 5

3.4. 生成测试报告

pycharm中打开terminal

 
技术分享图片
image

输入命令pytest -s --alluredir=report,会遇到以下这个错误:

 
技术分享图片
image

进入allure下面的utils文件,修改以下代码:

# utils文件,可以通过from allure import utlis进入

for suitable_name in suitable_names:
            # markers.append(item.get_marker(suitable_name))
            markers.append(item.get_closest_marker(suitable_name))

 
技术分享图片
image

修改之后,再次运行pytest -s --alluredir=report命令:

 
技术分享图片
image

运行后,无上述错误,同时会生成一个report文件。其中会有一个xml格式的报告:

 
技术分享图片
image
 
技术分享图片
image

当然xml格式的报告不够直观,我们需要通过allure将它转成html格式的报告。通过cmd命令cdreport的根目录下,执行allure generate --clean report

 
技术分享图片
image

回到根目录下,会生成一个allure-report的文件夹,在pycharm中打开文件夹,点击index.html运行

 
技术分享图片
image

ok,到此为止。可以看到我们的精美的测试报告了

 
技术分享图片
image
 
技术分享图片



作者:努力学习的小白
链接:https://www.jianshu.com/p/9673b2aeb0d3
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。






以上是关于Pytest+Allure环境的搭建的主要内容,如果未能解决你的问题,请参考以下文章

Python+pytest+allure 环境搭建

pytest+allure2+jenkins搭建

pytest+jenkins+allure搭建中遇到的坑

enkins+requests+pytest+allure持续集成

docker 搭建 jenkins + allure + jdk + python + pytest + gitee 配置持续集成部署(亲测无坑)

docker 搭建 jenkins + allure + jdk + python + pytest + gitee 配置持续集成部署(亲测无坑)