软件测试|Windows系统配置pytest+allure环境教程

前言

allure可以输出非常精美的测试报告,也可以和pytest进行完美结合,不仅可以渲染页面,还可以控制用例的执行。本文我们将介绍Windows系统中如何配置allure环境。

第一步:配置Java环境

因为allure的运行依赖于Java环境,所以我们需要先配置好Java环境,allure需要的Java环境为:JDK1.8+,配置好Java环境后,我们可以在cmd中输入where java命令查看是否成功成功配置好JDK。

第二步:安装allure

  1. 下载allure安装包,allure下载地址

  2. 解压Zip包,将allure安装目录下的 allure-2.17.3/bin配置到系统的环境变量中,如下图:

  1. 配置环境变量后,我们可以在cmd中输入allure --version查看是否成功安装及配置环境变量,如下图所示:

第三步:安装allure-pytest第三方库

我们在完成了allure的环境配置之后,要将allure与pytest结合起来,还需要安装allure-pytest第三方库,安装命令如下:

python 复制代码
pip install allure-pytest

第四步:allure生成测试报告

我们完成了上述步骤之后,就可以使用allure来生成精美的测试报告了,下面是我们使用allure生成报告的简单示例:

测试demo内容如下:

python 复制代码
import allure


@allure.step("步骤1:step1")
def step_1():
    print("step1")


@allure.step("步骤2:step2")
def step_2():
    print("step2")


@allure.feature("test")
class TestEditPage():
    @allure.story("test01")
    def test_1(self):
        """这是成功用例"""
        step_1()
        step_2()
        print("测试成功")

    @allure.story("test02")
    def test_2(self):
        """这是失败用例"""
        assert 1 == 2, "测试失败"

    @allure.story("test03")
    def test_3(self):
        """成功用例3"""
        print("test03")

    def test_31(self):
        """成功用例31"""
        print("成功用例31")

    def test_32(self):
        """成功用例32"""
        print("成功用例32")

    @allure.story("test04")
    def test_04(self):
        """成功用例4"""
        print("test04")

    def test_41(self):
        """失败用例41"""
        print("失败用例41")
        assert 1 == 2

    def test_42(self):
        """成功用例42"""
        print("成功用例42")

我们先切换到demo所在目录,在Terminal输入如下命令:

python 复制代码
pytest -s test_allure.py --alluredir report

其中report为报告的目录,运行命令,输出的内容如下:

python 复制代码
================================================================================= test session starts =================================================================================
platform win32 -- Python 3.7.7, pytest-7.4.0, pluggy-1.2.0
rootdir: C:\Users\89703\PycharmProjects\hogwarts-sdetck26\CalculatorProject
plugins: allure-pytest-2.13.2, Faker-18.13.0
collected 8 items                                                                                                                                                                      

test_allure.py step1
step2
测试成功
.Ftest03
.成功用例31
.成功用例32
.test04
.失败用例41
F成功用例42
.

====================================================================================== FAILURES =======================================================================================
_________________________________________________________________________________ TestEditPage.test_2 _________________________________________________________________________________

self = <CalculatorProject.test_allure.TestEditPage object at 0x000001E1A96F7308>

    @allure.story("test02")
    def test_2(self):
        """这是失败用例"""
>       assert 1 == 2, "测试失败"
E       AssertionError: 测试失败
E       assert 1 == 2

test_allure.py:33: AssertionError
________________________________________________________________________________ TestEditPage.test_41 _________________________________________________________________________________

self = <CalculatorProject.test_allure.TestEditPage object at 0x000001E1A96F5AC8>

    def test_41(self):
        """失败用例41"""
        print("失败用例41")
>       assert 1 == 2
E       assert 1 == 2

test_allure.py:56: AssertionError
=============================================================================== short test summary info ===============================================================================
FAILED test_allure.py::TestEditPage::test_2 - AssertionError: 测试失败
FAILED test_allure.py::TestEditPage::test_41 - assert 1 == 2
============================================================================= 2 failed, 6 passed in 0.31s =============================================================================

生成网页报告

python 复制代码
# 启用 allure server 展示测试报告

allure serve report

浏览器将会自动打开网页报告,如下图:

总结

本文主要介绍了Windows系统中如何配置allure环境,并且结合pytest生成美观的测试报告的基本步骤,后续我们将介绍pytest与allure结合的更高级的应用。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

相关推荐
sszmvb12341 小时前
测试开发 | 电商业务性能测试: Jmeter 参数化功能实现注册登录的数据驱动
jmeter·面试·职场和发展
测试杂货铺1 小时前
外包干了2年,快要废了。。
自动化测试·软件测试·python·功能测试·测试工具·面试·职场和发展
hairenjing11231 小时前
在 Android 手机上从SD 卡恢复数据的 6 个有效应用程序
android·人工智能·windows·macos·智能手机
码农派大星。2 小时前
软件测试--BUG篇
功能测试·bug
测试界萧萧2 小时前
外包干了4年,技术退步太明显了。。。。。
自动化测试·软件测试·功能测试·程序人生·面试·职场和发展
小码哥说测试3 小时前
接口测试用例设计的关键步骤与技巧解析!
自动化测试·测试工具·jmeter·职场和发展·测试用例·接口测试·postman
霍格沃兹测试开发学社测试人社区3 小时前
软件测试学习笔记丨Flask操作数据库-数据库和表的管理
软件测试·笔记·测试开发·学习·flask
linsa_pursuer3 小时前
快乐数算法
算法·leetcode·职场和发展
plmm烟酒僧4 小时前
Windows下QT调用MinGW编译的OpenCV
开发语言·windows·qt·opencv
Jtti6 小时前
Windows系统服务器怎么设置远程连接?详细步骤
运维·服务器·windows