allure安装配置使用 简单版

news/2025/3/12 0:47:11/文章来源:https://www.cnblogs.com/chenxiaomeng/p/18236732

 

环境安装

一、安装配置JDK

先检查是否安装JDK,cmd中查看java版本:java -version

若未安装,以下面的步骤安装:

1、Oracle官网下载JDK:https://www.oracle.com/java/technologies/downloads/,请下载安装JDK8及以上版本

2、安装JDK

3、JDK配置环境变量:win10系统右击“我的电脑”-->"属性"-->"高级系统设置"-->"高级"-->"环境变量",win11系统在cmd中输入sysdm.cpl

 (1)系统变量中新建"JAVA_HOME"变量
    变量名:JAVA_HOME
    变量值:C:\Program Files\Java\jdk1.8.0_221(填写jdk的安装路径)

(2)系统变量中新建"CLASSPATH"变量
    变量名:CLASSPATH
    变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;

(3)在path环境变量中添加以下内容
    %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin

(4)验证JDK是否配置成功
    cmd打开命令行终端,输入java -version命令时,并提示如下信息,说明已经安装配置成功。

 

二、安装配置allure

1、下载路径:https://github.com/allure-framework/allure2/releases

   或:https://repo.maven.apache.org/maven2/io/qameta/allure/allure-commandline/

 

2、将压缩包解压后,复制安装包到想安装的路径

3、配置环境变量:将allure的bin目录所在路径添加到系统环境变量path中

4、验证是否配置成功:cmd进入命令行窗口,输入allure 或 allure --version 进行验证

 

三、pycharm中安装pytest-allure插件

使用命令pip install pytest-allure 进行安装。

说明:此命令将安装allure-pytest 和 allure-python-commons包,以生成与allure2兼容的测试报告数据。

 
注意:配置好环境变量后要使用allure记得重启下pychram。如果配置环境变量以后如果验证未配置成功,请尝试重启电脑。

allure生成报告

1、先生成测试报告(生成了三个文件):

   pytest testcases/test_switch_window_handle.py --alluredir=UIreport

 

2、再查看测试报告:

  1、可直接生成报告查看:allure generate UIreport -o UIreport/report

 

 

 2、可启动测试报告服务查看:依托测试报告生成的3个文件,生成测试报告的本地服务(如下图:192.168.2.7:6053,且服务是起着的)

     allure serve UIreport

 

自动打开该服务的网页,显示测试报告内容

 

allure报告的丰富使用

1、allure测试报告分层显示测试用例

from time import sleepimport allurefrom config.driver_config import DriverConfig
from page.login_page import LoginPage
from page.left_menu_page import LeftMenuPage
from page.external_link_page import ExternalLinkPageclass TestWindowHandle:def test_switch_window_handle_01(self, driver):# driver = DriverConfig().driver_configLoginPage().login(driver, 'william')sleep(1)LeftMenuPage().click_level_one_menu(driver, '外链')sleep(3)title = ExternalLinkPage().goto_imooc(driver)print(f'title:{title}')sleep(1)# driver.quit()@allure.description('窗口句柄')@allure.epic('窗口句柄epic')@allure.feature('窗口句柄feature')@allure.story('窗口句柄story')@allure.tag('窗口句柄tag')def test_switch_window_handle_02(self, driver):"""
        test_switch_window_handle_01,根据测试步骤分类:param driver::return:"""
        with allure.step('登录'):LoginPage().login(driver, 'william')sleep(1)with allure.step('点击外链'):LeftMenuPage().click_level_one_menu(driver, '外链')sleep(3)with allure.step('断言'):title = ExternalLinkPage().goto_imooc(driver)print(f'title:{title}')assert title == '慕课网-程序员的梦工厂'sleep(1)

 

 

2、将测试步骤截图放到测试报告

# common.report_add_img封装的方法
from time import sleepimport alluredef add_img_to_report(driver, step_name, need_sleep=True):"""
    截图并插入allure报告:param driver::param step_name::param need_sleep::return:"""
    if need_sleep:sleep(3)allure.attach(driver.get_screenshot_as_png(),     # 截图step_name+'.png',                   # 截图命名allure.attachment_type.PNG          # 附件格式)

在测试步骤需截图的位置调用add_img_to_report()方法:

from time import sleepimport allurefrom page.login_page import LoginPage
from page.left_menu_page import LeftMenuPage
from page.external_link_page import ExternalLinkPage
from common.report_add_img import add_img_to_reportclass TestWindowHandle:@allure.description('窗口句柄')@allure.epic('窗口句柄epic')@allure.feature('窗口句柄feature')@allure.story('窗口句柄story')@allure.tag('窗口句柄tag')def test_switch_window_handle(self, driver):with allure.step('登录'):LoginPage().login(driver, 'william')sleep(1)add_img_to_report(driver, '登录')with allure.step('点击外链'):LeftMenuPage().click_level_one_menu(driver, '外链')sleep(3)add_img_to_report(driver, '点击外链')with allure.step('断言'):title = ExternalLinkPage().goto_imooc(driver)print(f'title:{title}')assert title == '慕课网-程序员的梦工厂'sleep(1)

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/721298.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

dubbo~全局异常拦截器的使用与设计缺陷

异常拦截器ExceptionMapper 在JAX-RS(Java API for RESTful Web Services)中,ExceptionMapper接口用于将Java异常映射到HTTP响应。通过实现ExceptionMapper接口,你可以自定义如何处理特定类型的异常,并生成相应的HTTP响应。 优先级和选择 当有多个ExceptionMapper可用于处…

RPC--远程过程调用协议

简单介绍一下RPC什么是RPC? RPC的全称是:Remote Procedure Call,远程过程调用。它的作用就是允许一台机器上的程序去调用另一台机器上的程序,而不会意识到这个过程是远程的,也就是程序员不需要知道网络通信中的任何细节。 为什么要使用RPC?提高开发效率:程序员不需要再关…

echarts 曲线中显示最大值进行标签样式的设置和修改

曲线中最大值最小值需要完善一些相关的信息 let color = [ #ee6666, #73c0de, #3ba272, #fc8452, #9a60b4, #ea7ccc] let xData =[00:00, 04:00, 08:00, 12:00, 16:00, 20:00, 24:00] //item 是循环的后台返回的数据,用来构造有几条曲线 //关键代码还是markPoint中的内容 data…

终于搞懂了!原来vue3中template使用ref无需.value是因为这个

前言 众所周知,vue3的template中使用ref变量无需使用.value。还可以在事件处理器中进行赋值操作时,无需使用.value就可以直接修改ref变量的值,比如:<button @click="msg = Hello Vue3">change msg</button>。你猜vue是在编译时就已经在代码中生成了.…

用 Python 撸一个 Web 服务器-第2章:Hello World

从一个 Hello World 程序说起 要编写 Web 服务器,需要用到一个 Python 内置库 socket。Socket 是一个比较抽象的概念,中文叫套接字,它代表一个网络连接。两台计算机之间要进行通讯,大概分为三个步骤:建立连接,传输数据,关闭连接。而 socket 库为我们提供了这个能力。 按…

go pool

来自: sync.Pool 原理 sync.Pool 核心对象有三个New:函数,负责对象初始化 Get:获取 Pool 中的对象,如果 Pool 中对象不存在则会调用 New Put:将对象放入 Pool 中New func Pool 的结构很简单,就 5 个字段 type Pool struct { ... New func() interface{} }字段 New 是…

CSP历年复赛题-P2119 [NOIP2016 普及组] 魔法阵

原题链接:https://www.luogu.com.cn/problem/P2119 题意解读:在一组数里找出所有的Xa,Xb,Xc,Xd的组合,使得满足Xa<Xb<Xc<Xd, Xb-Xa=2(Xd-Xc), Xb-Xa<(Xc-Xb)/3,并统计出每个数作为A,B,C,D出现的次数。 解题思路: 1、枚举(O(n^4)) 首先想到的是通过4重循环枚…

应用解析 | 面向智能网联汽车的产教融合解决方案

经纬恒润融合二十多年的行业经验,将实际的工程应用、项目需求引入到产教融合中,打破院校与企业之间的界限,做到所学即所用,毕业即就业。 背景介绍随着科技的飞速发展,智能网联汽车已成为汽车产业的新宠,引领着未来出行的潮流。然而,行业的高速发展也带来了对高素质技术技…

PTA大作业4-6总结

前言 这三次大作业使用到的新知识点并不是很多,主要还是以继承与多态为主,虽然在新知识点上并没有增加许多,但明显在类的构造,类与类之间的关联设计方面难度明显有较大的增加,题量方面明显还是和之前三次大作业一样,每次大作业都是以一题为主,其余的题目都是为了巩固基础…

.NET之Hangfire快速入门和使用

原文地址:.NET之Hangfire快速入门和使用 - 追逐时光者 - 博客园 (cnblogs.com)前言:定时任务调度问题,是一个老生常谈的问题。网上有许多定时任务调度的解决方案,对于我而言很早以前主要是使用Window计划和Window服务来做任务定时执行,然后就开始使用定时任务调度框架Quar…

插值技术研究

过采样与欠采样&图像重采样(上采样&下采样) 研究图像插值技术:2016年苏州大学的钟宝江等人《图像插值技术综述》[1]图像插值利用图像已知采样点的灰度值估计未知采样点的灰度值,是图像数据的一种生成过程 。 图像插值的目的在于通过升采样的方式提高图像的分辨率。…

科研日记4【2024-06-06】

实验高度向稀疏采样造成的整行缺失使得在高度向上出现严重混叠现象, 对高度向稀疏采样的数据首先利用线性插值恢复补全,再将部分插值去掉,以模拟二维随机降采样。 实验结果说明上述方法并不好。 高度向50%稀疏直接成像:高度向50%稀疏-不动迭代成像:高度向50%稀疏-线性插值…