IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> 小笔记-简单但够用系列_allure定制及生成pytest报告 -> 正文阅读

[开发测试]小笔记-简单但够用系列_allure定制及生成pytest报告

allure 安装

allure 安装文件下载路径

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

解压后对其 bin 目录 配置系统环境变量即可在命令行中调用。

>E:\python_project\pythonProject> allure --version
>2.14.0

allure 报告定制

  • 原始报告
    定制前1
    定制前2

  • 定制报告
    定制后1
    定制后2

对于原始的报告,内容是非常单薄的,而且缺少必要的描述,只有编写用例的人才知道这个用例时什么,并不明了。因此需要进行定制化的添加内容。

可能需要注意的模块问题

pytest-allure-adaptor 模块,一个在网上资料经常出现的东西,利用这个模块也可以进行报告的定制化。但不建议使用,因为版本的兼容问题可能会导致安装后出现运行报错。
对于简单够用的来说,直接使用 allure 模块即可。

import  allure

简单够用的定制操作

用例分组

  • feature
    一般用在模块或者类前,分组级别较高。
    @allure.feature("模块t1")
    class Test_t1:
    
  • story
    一般用在用例前,作为用例的名称。
    @allure.story('测试用例 002')
    def test_002(self):
    
  • title
    一般用在用例前,与 story 作为用例的名称。
    @allure.title('测试用例 003')
    def test_003(self):
    

@allure.story() 与 @allure.title() 的区别在于使用 story 的用例其执行结果会统一归在一个组中,而使用 title 的用例则会按照执行顺序显示。具体可看前面的定制后的报告图。

用例描述

  • description
    使用 @allure.description 对用例进行描述说明。
    @allure.description("测试用例的描述")
    def test_020(self):
    

用例等级

  • severity
    用 @allure.severity(allure.severity_level.NORMAL) 对用例的严重等级进行标记。用例的严重级从大到小有以下几级:BLOCKER 、CRITICAL 、NORMAL 、MINOR 、TRIVIAL。
    @allure.severity(allure.severity_level.CRITICAL)
    def test_020(self):
    

用例步骤

对于用例的步骤有两种方法可以标记:

  • @allure.step(‘test step 1’)
    这种方式是用于对方法的嵌套,如:

    @allure.step('步骤1:1')
    def step1(self):
        print('1')
    @allure.step('步骤2:2')
    def step2(self):
        print('2')
    @allure.title('测试用例 001')
    def test_001(self):
        self.step1()
        self.step2()
    

    在这里插入图片描述

  • with allure.step(‘test step 1’)
    这种方式是用在用例内部的,需要将对应的步骤代码写到 with allure.step() 下,效果请见 定制报告图2 ,代码应用如下:

    def test_020(self):
        with allure.step('步骤1:输出用例编号'):
            print("020")
        with allure.step('步骤2:执行断言'):
            assert url == 'test.com'

报告内容的定制代码行数,可能不比单纯的用例代码行数少,要做出详细、令人一目了然且满意的报告,也并不简单,需要耗费不少的时间。

报告的语言显示可以在页面左侧菜单下选择。
若生成的报告打开时,数据一直显示加载中,不能正常查看,则为打开方式的问题,利用pycharm右键打开报告即可。

logo定制

修改对应的 css 配置文件,可对报告的 logo 及菜单栏标题进行定制修改。

启用自定义模块

plugins:
  - junit-xml-plugin
  - xunit-xml-plugin
  - trx-plugin
  - behaviors-plugin
  - packages-plugin
  - screen-diff-plugin
  - xctest-plugin
  - jira-plugin
  - xray-plugin
  - custom-logo-plugin

修改 css 配置文件

.side-nav__brand {
    background: url(logo.png) no-repeat left center !important;
    margin-left: 15px;
    width: 240px;
    height: 75px;
}
.side-nav__brand span{
    display: none;
}
.side-nav__brand:after {
    content: "DFDK";
    margin-left: 20px;
    width: 68px;
    height: 86px;
    position: fixed;
    top: 36px;
    left: 31px;
    font-size: 42px;
    font-weight: 300;
}

修改后重新生成报告即可应用。

生成 allure 报告

对于报告的生成,若所选择的数据目录或报告输出目录不存在,需要先创建目录。

import pytest
import os
if __name__ == '__main__':
    pytest.main(['-v','-s','--count','1','--repeat-scope','session','--html=result2V.html','test_data.py','--alluredir','./temp'])
    ## --count 为循环执行次数
    ## --repeat-scope 为指定循环的范围,session为循环的是会话循环, 1 2 1 2 1 2,若不指定,则默认为用例循环,及 1 1 1 2 2 2
    ## --clean-alluredir 如需生成的报告只有最新的数据,可添加该参数
    os.system('allure generate ./temp -o ./report --clean')
    ## --clean 每次生成报告都会将已有的报告删除,若需要保留每次的报告,需要指定新的目录或者报告名称
  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2021-09-30 12:14:05  更:2021-09-30 12:15:04 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/18 0:21:30-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码