首页 > 其他分享 >Allure06-动态测试集与功能特性

Allure06-动态测试集与功能特性

时间:2023-01-07 10:04:59浏览次数:47  
标签:story allure dynamic feature 特性 Allure06 测试 epic

动态测试集特性

  • allure.dynamic.suite('某用例所属的测试集名称')
  • 动态特性放到函数或方法中
  • 不建议使用allure.dynamic.suite,否则会导致测试集名称显示混乱:既包含模块名,又同时包括自定义测试集名,而正确的@allure.suite要么只有模块名,要么只有自定义测试集名
  • 不支持动态epic
  • 即不支持allure.dynamic.epic

动态功能特性

  • allure.dynamic.feature('某用例所属功能')
  • 必须放在函数、方法之内,会覆盖@allure.feature
  • 可以使用参数化的参数
  • allure.dynamic.story('某用例所属的功能点或测试点')
  • 必须放在函数、方法之内,会覆盖@allure.story
  • 可以使用参数化的参数

动态功能特性的显示优先级

  • 如果写了epic,不论是否写了feature、story,则测试报告Overview部分的FEATURES BY STORIES显示epic
  • 如果没有写epic,但写了feature,不论是否写了story,则测试报告Overview部分的FEATURES BY STORIES显示feature
  • 如果没有写epic和feature,但写了story,则测试报告Overview部分的FEATURES BY STORIES显示story

编写测试代码文件ceshi_calc_as01.py,测试add函数、sub函数,添加动态测试集、动态功能特性

add_cases=pandas.read_excel('add_sub.xlsx').values.tolist()
@pytest.mark.parametrize('case_id, case_title, module, function, a, b, expect, severity', add_cases)
@allure.epic('计算器epic')
@allure.suite('计算器加法测试集')
def test_add(case_id, case_title, module, function, a, b, expect, severity):
# allure.dynamic.suite('计算器加法测试集')
allure.dynamic.feature(module+'-feature')
allure.dynamic.story(function+'-story')
actual=add(a, b)
assert actual==expect, f'预期结果:{a} + {b} = {expect},实际结果:{a} + {b} = {actual}'
if __name__=='__main__':
import os
pytest.main(['--alluredir=./allure-results', '--clean-alluredir', 'ceshi_calc_as01.py'])
os.system('allure.bat generate ./allure-results -o ./allure-report --clean')

测试报告Suites部分

Allure06-动态测试集与功能特性_测试报告

测试报告Overview部分的Feature

Allure06-动态测试集与功能特性_用例_02

测试报告Behaviors部分的Feature

Allure06-动态测试集与功能特性_用例_03

编写div的excel测试用例,用例字段如下

  • 用例编号、用例标题、模块、功能、被除数、除数、预期结果、优先级
  • 编写测试代码文件ceshi_calc_div01.py,测试div函数,添加测试集、动态功能特性,不清除之前的测试结果
div_cases=pandas.read_excel('div.xlsx').values.tolist()
@pytest.mark.parametrize('case_id, case_title, module, function, a, b, expect, severity', div_cases)
@allure.epic('计算器epic')
@allure.suite('计算器除法测试集')
def test_div(case_id, case_title, module, function, a, b, expect, severity):
allure.dynamic.feature(module+'-feature')
allure.dynamic.story(function+'-story')
actual=div(a, b)
assert actual==expect, f'预期结果:{a} + {b} = {expect},实际结果:{a} + {b} = {actual}'

测试报告Suites部分

Allure06-动态测试集与功能特性_测试报告_04

小结

  • allure动态特性写在函数或方法之中,非动态特性写在函数或方法之外
  • @allure.epic没有动态写法
  • @allure.suite与allure.dynamic.suite,建议@allure.suite
  • allure.dynamic.feature、allure.dynamic.story可以从用例中获得被测模块和功能名

作者:暄总-tester

标签:story,allure,dynamic,feature,特性,Allure06,测试,epic
From: https://blog.51cto.com/u_14911999/5995385

相关文章

  • Allure05-生成独立的allure测试报告
    生成独立的allure测试报告pycharm生成的测试报告无法直接打开pycharm自带容器(内置页面服务器),可以直接打开但allurereport下index.html文件是不能直接打开的,出现页面都是......
  • Allure03-用例标题、用例描述与测试步骤
    用例标题@allure.title('用例标题')放在函数、方法之外,不建议放到类之外每条用例执行一次可以使用参数化的参数用例描述@allure.description('用例描述')放在函数方法之外......
  • Allure02-测试集特性、模块特性与功能特性
    allure的特性allure支持pytest自带的特性fixture、parametrize、xfail、skipallure提供了很多特性(装饰器)allure可以将这些特性信息写入到测试报告中@allure.suite、@all......
  • Vulnhub之Hacksudo Thor靶机详细测试过程
    HacksudoThor识别目标主机IP地址─(kali㉿kali)-[~/Vulnhub/Hacksudo_Thor]└─$sudonetdiscover-ieth1-r192.168.56.0/24Currentlyscanning:192.168.56.0/24......
  • 正则表达式快速入门一 :regex 的基本概念及语法特性
    Regexquickstart:正则表达式快速入门author:wclsnreferencequickstart如果想要了解正则表达式的基本概念且英文ok的话,完全可以从我上面所附网站的quickstart看起......
  • 性能测试技术笔记(三):如何设计一个压测平台
    前面两篇笔记介绍了如何快速上手压测项目以及压测前准备测试环境和测试数据的一些方法。这篇文章,我想分享下关于压测平台功能设计和技术实现方案的一些技术笔记内容,内容......
  • 在linux上测试net程序
    1、将net程序发布为linux内核,并且自包含框架  2、安装WSL并安装Ubuntu(可参考:https://learn.microsoft.com/zh-cn/windows/wsl/install)。如果安不上就参考《旧版本的......
  • Apipost——让前端、后端、测试共用同一份API文档
    作为软件开发从业者,API调试是必不可少的一项技能,在这方面Postman做的非常出色。但是在整个软件开发过程中,API调试只是其中的一部分,还有很多事情Postman无法完成,比如:AP......
  • 【接口自动化测试实战】【二】基本概念
    什么是装饰器:  什么是函数对象?什么是调用函数  什么是闭包:    结果为: [1][1,1]第19课视频的第12分钟 ......
  • 关于接口测试自动化的总结与思考
    作者:云原生序近期,阿里云性能测试PTS接口测试已上线发布一段时间,本着以和大家交流如何实现高效的接口测试为出发点,本文包含了我在接口测试领域的一些方法和心得,希望大家一......