超详细,自动化测试allure测试报告实战(总结)

news/2024/12/2 22:33:00/

目录:导读

    • 前言
    • 一、Python编程入门到精通
    • 二、接口自动化项目实战
    • 三、Web自动化项目实战
    • 四、App自动化项目实战
    • 五、一线大厂简历
    • 六、测试开发DevOps体系
    • 七、常用自动化测试工具
    • 八、JMeter性能测试
    • 九、总结(尾部小惊喜)


前言

allure可以输出非常精美的测试报告,也可以和pytest进行完美结合,不仅可以渲染页面,还可以控制用例的执行。下面就对allure的使用进行一个详细的介绍和总结。

需要准备的环境:
python;
pytest;
allure-pytest;
allure工具;

1、allure用例描述

使用方法参数值参数说明
@allure.epic()epic描述敏捷里面的概念,对用例或用例集进行描述分类
@allure.feature()模块名称与epic类似,只是比epic级别低
@allure.story()用户故事与epic类似,只是比feature级别低
@allure.title(用例的标题)用例的标题重命名html报告的用例名称
@allure.testcase()测试用例的链接地址与link类似
@allure.issue()缺陷与link类似
@allure.description()用例描述进行测试用例的描述
@allure.step()操作步骤进行测试用例的步骤
@allure.severity()用例等级blocker,critical,normal,minor,trivial
@allure.link()链接定义一个链接,在测试报告展现(推荐使用)
@allure.attachment()附件报告添加附件

2、allure实战demo

# -*- coding:utf-8 -*-
import pytest
import allure
from base.log import Logger
logger = Logger(logger_name='allure', level='error').get_logger()@pytest.fixture(scope="session")  # 用例前置操作
def login_fixture():# 比如登录获取token操作return "token:xx"@allure.step("用例步骤1")
def step_1():logger.info("用例操作---------------步骤1")return True@allure.step("用例步骤2")
def step_2():logger.info("用例操作---------------步骤2")return False@allure.step("用例步骤3")
def step_3():logger.info("用例操作---------------步骤3")return True@allure.epic("可以对用例或用例集进行描述分类(若出现多个时,内容一致则自动归为一类)")
@allure.feature("对用例集或用例进行描述分类---与epic类似,只是比epic级别低")
@allure.story("对用例集或用例进行描述分类---与epic类似,只是比feature级别低")
class TestAllureDemo:@allure.testcase("https://xxx/testcase/list",name='用例链接testcase')  # 为了更好的链接到问题分类或者bug、测试用例地址中(url、name两个参数,可不填写name;可以用@allure.link)@allure.link("https://xxx/testcase/list", name='用例链接link')  # 与testcase没有多大区别,从可读性角度还是建议选择@allure.link@allure.issue("https://xxx/testcase/list", name='用例链接issue')  # 与testcase区别在于有小虫子图标@allure.title("用例的标题")  # 可参数化标题@allure.story("用例分类:1")  # 可参数化标题@allure.severity("critical")    # 用例等级(blocker critical normal minor trivial)def test_case_1(self, login_fixture):"""1.用例描述2.用例步骤3.预期结果"""logger.info(login_fixture)  # 获取用例前置的信息,比如登录tokenassert step_1()assert step_2()@allure.story("用例分类:2")def test_case_2(self, login_fixture):logger.info("测试用例2")assert step_1()assert step_3()@allure.epic("冒烟自动化用例")
class TestDemo2:@allure.story("用例分类:3")def test_case_3(self, login_fixture):logger.info("测试用例3")step_1()@allure.story("用例分类:4")def test_case_4(self, login_fixture):logger.info("测试用例4")step_3()

3、allure的命令行参数

pytest执行用例时可以加上allure的标记参数,可以控制执行哪些用例。

--allure-severities=SEVERITIES_SETComma-separated list of severity names. Tests onlywith these severities will be run. Possible valuesare: blocker, critical, normal, minor, trivial.
--allure-epics=EPICS_SETComma-separated list of epic names. Run tests thathave at least one of the specified feature labels.
--allure-features=FEATURES_SETComma-separated list of feature names. Run tests thathave at least one of the specified feature labels.
--allure-stories=STORIES_SETComma-separated list of story names. Run tests thathave at least one of the specified story labels.
--allure-link-pattern=LINK_TYPE:LINK_PATTERNUrl pattern for link type. Allows short links in test,like 'issue-1'. Text will be formatted to full urlwith python str.format().

实例如下:

# 选择运行你要执行epic的用例
pytest --alluredir ./report/allure --allure-epics=epic对大Story的一个描述性标签# 选择运行你要执行features的用例
pytest --alluredir ./report/allure --allure-features=模块2# 选择运行你要执行features的用例
pytest --alluredir ./report/allure --allure-stories="用户故事:1"

4、执行脚本-allure生成报表并启动报告

运行方式一:
命令行模式下运行pytest,生产测试结果文件

pytest demo.py --alluredir ./report/allure

allure程序启动已经生产的文件

allure serve ./report/allure

运行方式二:
编写启动方法,运行pytest

pytest.main([allure_demo.py, "--alluredir", "report/result"])

使用进程,开启allure服务

import subprocesssubprocess.call('allure generate report/result/ -o report/html --clean', shell=True)
subprocess.call('allure open -h 127.0.0.1 -p 9999 ./report/html', shell=True)

(两种方法都需要安装allure工具)

5、报告效果图及注解

E1

下面是我整理的2023年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

在阳光照耀的舞台上,奋斗是绽放的华彩;在风雨交加的征途上,拼搏成就无悔的辉煌。坚持不止,勇往直前,用汗水浇灌理想之花,让努力与执着铸就璀璨人生的传世之作!

胜利属于那些不畏艰辛、敢于拼搏的人,只有勇往直前,才能突破自我、追逐梦想。坚持不放弃,奋斗不止步,唯有如此,方能书写属于自己的辉煌篇章,成就无限可能!

奋斗是生命的激情,拼搏是实现梦想的舞台。无论前路如何崎岖,执着的追求和不屈的毅力将开辟出通往成功之路。信念燃烧心中,奋力挥洒汗水,成就自己的辉煌,创造不凡的人生!


http://www.ppmy.cn/news/976634.html

相关文章

Linux系统进程概念详解

这里写目录标题 冯诺依曼体系结构操作系统(Operator System)1.概念2.目的3.管理4.系统调用和库函数概念 进程1.概念2.描述进程-PCB3.查看进程4.通过系统调用获取进程标示符5.通过系统调用创建进程-fork 进程状态1.Linux内核源代码2.进程状态查看 进程优先级1.基本概念2.查看系统…

Jmeter接口/性能测试,Jmeter使用教程(超细整理)

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 1、线程组 线程组…

京东技术专家首推:Spring 微服务架构设计,GitHub 星标 128K

前言 本书提供了实现大型响应式微服务的实用方法和指导原则,并通过示例全面 讲解如何构建微服务。本书深入介绍了 Spring Boot、Spring Cloud、 Docker、Mesos 和 Marathon,还会教授如何用 Spring Boot 部署自治服务,而 无须使用重量级应用服…

吉林大学计算机软件考研经验贴

文章目录 简介政治英语数学专业课 简介 本人23考研,一战上岸吉林大学软件工程专硕,政治72分,英一71分,数二144分,专业课967综合146分,总分433分,上图: 如果学弟学妹需要专业课资料…

安装MongoDB错误

项目场景: 使用brew安装MongoDB中按照官网提示运行下面命令报错 brew tap mongodb/brew问题描述 Error: Failure while executing; git clone https://github.com/mongodb/homebrew-brew /opt/homebrew/Library/Taps/mongodb/homebrew-brew--originorigin --te…

Python爬虫技术的应用案例:聚焦热点话题与趋势分析

在舆情信息爆炸的时代,了解市场营销、舆情监测和内容创作等方面的热门话题和趋势,对企业和个人至关重要。而今日头条作为一个热门的新闻资讯平台,拥有大量用户生成的内容,抓取并分析热门话题和趋势,为我们提供有价值的…

一个灵活、现代的Android应用架构

一个灵活、现代的Android应用架构 学习Android架构的原则:学习原则,不要盲目遵循规则。 本文旨在通过示例演示实际应用:通过示范Android架构来进行教学。最重要的是,这意味着展示出如何做出各种架构决策。在某些情况下&#xff0…

阿里云Maven仓库文件

apache snapshots → https://maven.aliyun.com/repository/apache-snapshots central → https://maven.aliyun.com/repository/central google → https://maven.aliyun.com/repository/google gradle-plugin → https://maven.aliyun.com/repository/gradle-plugin jcenter …