Pycharm+pytest+allure打造高逼格的测试报告

在前面小酋已经讲了 Pycharm整合pytest测试框架。但我们发现pytest运行后,生成的结果难以阅读,那怎么美化呢?

这就是本次小酋分享的内容:在Pycharm+pytest基础上使用allure打造高逼格的测试报告。

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

如果在cmd中能输入java,获取到命令信息则不管,否则需要配置系统变量:

路径:计算机>属性>高级>环境变量

在系统变量添加

JAVA_HOME D:\Software\JDK8(改为自己的实际路径)

在Path中追加(没有则新建)

%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

打造高逼格的测试报告

1、安装allure

alluer官网地址:http://allure.qatools.ru/

当前最新版本(allure-commandline-2.13.1.zip)下载地址:

https://github.com/allure-framework/allure2/releases/tag/2.13.1

下载解压后,把解压目录放到自定义存放路径,然后在系统变量(参见上面java设置)Path中追加:

~\放置目录\allure-commandline-2.13.1\allure-2.13.1\bin;

点击确定,保存。此时可以通过cmd使用allure命令,则安装配置正确。

打造高逼格的测试报告

2、安装allure-pytest

pip install allure-pytest

注意:如果环境装有多个python版本,需切换到pycharm当前使用的python下面进行安装。

使用命令 pip list 确认插件是否安装成功

打造高逼格的测试报告

最终环境清单:

  • windows7 x64
  • python3.7
  • pycharm-professional-2019.3.1
  • pytest 5.3.2
  • allure-pytest 2.8.6
  • allure-commandline-2.13.1
  • java1.8

3、一个简单的用例test_simpe.py

import pytest
import allure
@allure.feature("测试Dome")
class TestClass:
    @allure.story("测试用例 1")
    def test_one(self):
        x = "hello"
        assert 'h' in x
    @allure.story("测试用例 2")
    def test_two(self):
        x = "test"
        assert hasattr(x, 'check')

PS:具体用例编写,allure的用法请持续关注后续文章,小酋将详细介绍。

4、在pycharm底部打开terminal

其中输入命令生成结果,命令格式:

pytest <测试目录> --alluredir <测试结果存放目录>

比如,我的文件夹目录如下

打造高逼格的测试报告

所以命令为:

pytest testcase --alluredir report/allure_raw

打造高逼格的测试报告

allure收集pytest运行后产出的结果放在 reportallure_raw 文件夹中

注意:这里的 allure_raw 文件夹只存放的是测试运行结果,还不是报告!报告还需要调用 allure 命令去生成。

当前结果是像这样的:

打造高逼格的测试报告

上一页12下一页


留言