百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

使用nginx+allure管理自动化测试报告

off999 2025-02-20 17:23 30 浏览 0 评论

allure在自动化测试中经常用来生成漂亮的报告,但是网上及官网上给出的例子都仅仅是针对单个测试用例文件的形式介绍的,实际使用中,自动化测试往往需要包含不止一个产品或项目,本文介绍如何使用nginx+allure来管理自动化测试报告,使自动化测试报告可以按照产品分开查看,且可以查看历史报告。

自动化测试工程示例结构

  • main.py主要用来在python文件中启动pytest。

  • testsuites目录包含两个示例项目的测试用例。

  • allure_result存放allure生成的测试结果。

  • report存在allure generate命令生成的html报告。其中报告按照日期划分目录,每个日期下又按照项目划分目录。

nginx配置目录服务器

配置nginx.conf配置文件

????server?{
	????#?配置服务监听端口
????????listen???????80;
????????server_name??localhost;

????????location?/?{
	????????#?配置allure测试报告的目录,根据实际情况更改,注意路径中不能包含中文,否则会报错
			root?C:\\allure_demo\\report;
			#?启用autoindex,这样就可以查看report目录及子目录信息,作为文件服务器使用
			autoindex?on;
????????}
	}

启动nginx之后,访问http://localhost,可以查看存在哪些日期目录。

点击指定日期,可以访问该日期下哪些项目存在测试报告

然后,再点击指定的项目就可以查看到该项目在该日期下的自动化测试报告了。

代码

  1. testsuites目录下就是按照pytest要求编写的测试用例,其中可以使用allure-pytest插件添加用例特性、步骤等信息,以test_demo1.py测试用例文件为例,示例如下:

import?pytest
import?allure??

@allure.step("步骤1")
def?step1():
????print("执行步骤1")??

@allure.step("步骤2")
def?step2():
????print("执行步骤2")??

@allure.step("步骤3")
def?step3():
????print("执行步骤3")??

@allure.feature("demo模块特性")
@allure.story("用户故事1")
def?test_case01():
????step1()
????step2()
????step3()
  1. main.py主要用来启动pytest执行测试用例,示例代码按照项目名称分别执行自动化测试,并自动生成allure测试报告到当前日期目录及指定项目名称下,执行完毕后刷新浏览器就可以查看最新测试报告了。

import?datetime
import?os
import?pytest??

def?run(project):
	#?启动pytest
	#?测试结果存放到alluredir指定目录
	#?--clean-alluredir表示清理历史结果
????pytest.main([
????????"testsuites/{}".format(project),
????????"--alluredir=allure_result",
????????"--clean-alluredir",
????????"-vs"
????])
??
if?__name__?==?"__main__":
????today?=?datetime.datetime.now().strftime("%Y-%m-%d")
????#?运行project1项目的自动化测试
????run("project1")
????#?生成project1的allure测试报告到report/yyyy-mm-dd/project1目录下
????os.system("allure?generate?-c?allure_result?-o?report/{0}/{1}".format(today,?"project1"))

	#?运行project1项目的自动化测试
????run("project2")
????#?生成project1的allure测试报告到report/yyyy-mm-dd/project2目录下
????os.system("allure?generate?-c?allure_result?-o?report/{0}/{1}".format(today,?"project2"))

参考文献

[1]. Allure Framework (qameta.io)


相关推荐

一般家庭宽带用多少兆为最佳

这个要根据实际情况来确定,一般情况下,家庭宽带有50兆、100兆及200兆。如果是三口之家,平时也就看看电视,或刷刷手机,50兆的就够了。如果人口多,面积为四室二厅的房子,同时有人看电视有人玩游戏,有...

电脑配置太高装不了win7(电脑配置太高装不了win7怎么办)

如果是这样,那就不要安装Win7了,安装Win10即可。原因如下:1、win10系统是一个大势所趋。新的事物,你必须要接触、要熟悉,虽然目前还可以暂时回避,但是几年后呢,win7必然会像xp一样退出历...

移动硬盘读取不出来(移动硬盘读取不出来了,怎么拿数据)

1、移动硬盘插入电脑,选择计算机,选择左侧“此电脑”,点击右击。2、选择“管理”点击,进入计算机管理;选择磁盘“磁盘管理”。3、如没有看到移动硬盘,可以选择右边的更多操作,重新扫描磁盘。4、如依然没有...

win7系统有32位的吗(win732位系统需要多大内存)

  win732位系统最低配置要求:  CPU:1GHz32位或者64位处理器;  显卡:集成显卡64MB以上;  内存:内存1GB及以上安装识别的最低内存是512M,小于512M会提示内存...

桌面图标怎么改(桌面图标怎么改成自己喜欢的图案)
  • 桌面图标怎么改(桌面图标怎么改成自己喜欢的图案)
  • 桌面图标怎么改(桌面图标怎么改成自己喜欢的图案)
  • 桌面图标怎么改(桌面图标怎么改成自己喜欢的图案)
  • 桌面图标怎么改(桌面图标怎么改成自己喜欢的图案)
如何将系统还原(如何将系统还原到以前版本)

你好!依次单击“开始”/“程序”/“附件”/“系统工具”/“系统还原”命令,在其后弹出的系统还原设置向导界面中,将“恢复我的计算机到一个较早的时间”项目选中,然后单击“下一步”按钮;在其后弹出的系统...

u盘格式化分配单元大小多少合适

1、如果只是存放歌曲类或者是文档等小文件,就可以把单个格设置的小一些,比如16K,如果是大容量的电影可以设置为128K,不过一般只需要设置为【默认配置大小】就可以了;  2、U盘存储文件就是按照这个分...

修改自家wifi密码管理员密码

修改WiFi密码和管理员密码有两种方式:通过路由器管理页面和通过手机APP。1.通过路由器管理页面修改密码:步骤1:连接路由器,打开浏览器输入路由器的IP地址(一般为192.168.1....

超级硬盘数据恢复软件破解(超级硬盘数据恢复软件7.0)

这个慢很正常。因为硬盘恢复数据之前要对整个分区扫描一次,找到文件后,恢复的时候又要扫描一次。如果分区的容易很大,扫描会很耗时的。修复工具软件版本:嗨格式数据恢复大师2.8.1433.405,佳...

win11如何从edge恢复到ie(edge怎么变回ie)

如果您使用的是Windows10操作系统,在Windows的默认浏览器中使用Edge时,系统将默认将许多链接打开到Edge浏览器。如果您想要改回IE浏览器打开链接,按照以下步骤操作:1.打开IE浏...

uefi引导修复怎么用(uefi引导修复没反应)

biosuefi引导修复工具使用方法1、首先,在电脑关机状态下将pe启动盘插在电脑上,并在开机的时候进入pe系统,然后选择第一项回车进入:2、然后,进入到pe系统桌面之后,双击桌面上的分区工具:3、进...

360怎么升级win7系统(360如何升级win10)

像这种情况用以下介绍的方法和步骤就可以解决:1、打开电脑桌面找到“360安全卫士”软件,并打开;2、找到“360安全卫士”右下角工具拓展工具箭头;3、点击进入,选择“全部工具”;4、在全部工具页...

电脑分辨率怎么设置(电脑分辨率怎么调)

操作步骤/方法【Windows系统】END【Mac系统】第1步,选择系统偏好设置在电脑桌面,点击苹果图标并选择系统偏好设置。在电脑桌面,点击苹果图标并选择系统偏好设置。第2步,点击显示器在系统偏好设置...

win7输入法切换不了(win7输入法切换没反应)

输入法无法切换解决方法:   1、点击屏幕左下角的“开始图标”并在弹出对话框中选择“控制面板”选项并打开;  2、进入控制面板页面后将查看方式...

笔记本win10怎么改win7系统(笔记本win10改win7bios设置)

请注意,将Win10系统改为Win7系统并不是一个可行的或推荐的操作。在执行此操作之前,请确保已经获得必要的权限和授权,以及了解所涉及的风险和可能的问题。如果仍然想要执行此操作,以下是一些步骤...

取消回复欢迎 发表评论: