尧图网络科技YAOTU DIGITAL 获取报价
获取报价
首页 / 资讯中心 / 文章详情

pytest结合allure生成html测试报告(step、story、severity、screenshot)

发布时间:2026/9/3 18:40:17

资讯中心
01
ARTICLE

pytest结合allure生成html测试报告(step、story、severity、screenshot)

pytest结合allure生成html测试报告(step、story、severity、screenshot)
allure介绍以及环境allure是一个生成HTML测试报告的工具包。依赖java环境所以必须安装jdk和配置环境变量生成html报告需要下载allure解压即可不需要安装但是需要配置环境变量下载地址https://repo.maven.apache.org/maven2/io/qameta/allure/allure-commandline/,需要匹配python中的allure-pytest版本下载后不需要安装直接解压放到相应目录环境变量配置path中新增变量把allure的bin目录放到path中。python环境需要安装pip install allure-pytestpython环境中安装pytest使用总结配置文件修改使用过allure生成测试报告运行时依然执行pytest命令但是执行后生成json文件使用命令生成html报告allure generate report -o report/html --clean-o 指代output输出报告的路径–clean指代清除以前生成报告如果不想清楚需要留存历史数据此命令可不加添加测试步骤allure.step(title“输入企业号”)—此代码在操作层方法上。所以需要修改page类#操作层增加测试步骤classLoginHandle(BaseHandle):def__init__(self):self.login_pageLoginPage()#实例化元素对象类#定义账号密码输入框allure.step(title输入企业号)definput_enterprise(self,enterprise):#调用基类方法input_text(element,text),两个变量元素和输入文本self.input_text(self.login_page.find_enterprise(),enterprise)allure.step(title输入账号)definput_account(self,account):self.input_text(self.login_page.find_account(),account)allure.step(title输入密码)definput_psd(self,psd):self.input_text(self.login_page.find_psd(),psd)# allure.step(title点击登录)defclick_login_btn(self):self.login_page.find_login_btn().click()添加测试截图此代码一般都在测试用例中如allure.attach(UtilsDriver.get_driver().get_screenshot_as_png(),登录成功,allure.attachment_type.PNG)需要先获取driver再使用driver调用截图方法截图描述、获得png图片添加测试用例级别此代码一般在用例上方标记如allure.severity(allure.severity_level.BLOCKER)allure.story(登录模块)#增加用例模块归属使用story方法classTestLogin:#初始化。类级别的defsetup_class(self):self.login_proxyLoginProxy()self.home_proxyHomeProxy()self.dig_proxyDigitalProxy()#结束销毁类级别统一销毁defteardown_class(self):UtilsDriver.quit_driver()#调用工具类中的关闭webdriver对象#方法三参数化使用函数pytest.mark.parametrize(enterprise,account,psd,expect,read_params_data(login_data.json,login_success,enterprise,account,psd,expect))#增加用例级别allure.severity(allure.severity_level.BLOCKER)deftest01_login(self,enterprise,account,psd,expect):# 调用登陆业务进入首页参数有账号密码self.login_proxy.go_home_page(enterprise,account,psd)#登录业务完成后使用allure截图须先获取driver使用driver调用截图方法截图描述、获得png图片allure.attach(UtilsDriver.get_driver().get_screenshot_as_png(),登录成功,allure.attachment_type.PNG)usernameself.home_proxy.get_username_msg()#获取登陆者姓名#断言assertexpectusername logging.info(登陆者姓名{}.format(username))#日志记录测试用例数据logging.info(测试用例数据企业:{},账号{},预期结果{}.format(enterprise,account,expect))测试结果如下
02
RELATED NEWS

相关资讯

更多网站建设与数字化升级内容

03
WHY YAOTU

想打造同款高转化官网?

懂行业、懂生意,从建站到增长一站式陪跑

场景化定制

不做模板站,围绕你的业务场景量身设计,小众不撞款。

营销型架构

以转化目标组织内容与路径,让官网真正带来询盘。

全周期服务

设计、开发、运营、运维一体,上线只是开始。

免费获取你的建站方案

留下需求,专属顾问 24 小时内为你输出方案建议。