自动化测-Allure报告失败截图

步骤
一、新建一个类,把截图存在指定路径中
public class ScreenShotUtil {
public static Logger logger = Logger.getLogger(ScreenShotUtil.class);
public static File saveScreenShot(){
File file = driver.getScreenshotAs(OutputType.FILE);
//把原始的file对象保存到图片文件中
//文件名字中加上时间戳 yyyy-MM-dd HH-mm-ss
SimpleDateFormat df = new SimpleDateFormat(“yyyyMMdd-HHmm-ss”);// 设置日期格式
String timeStamp = df.format(new Date());
File destFile = new File(System.getProperty(“user.dir”) +"\target\ScreenShot\"+"_"+ timeStamp+".png");
try {
logger.info(“拷贝文件失败截图到指定目录【D:\workspace2\compny-app\target\ScreenShot\” + timeStamp+".png" +"】");
FileUtils.copyFile(file, destFile);
} catch (IOException e) {
e.printStackTrace();
}
return destFile;
}
}
二、新建一个类实现IHookable接口,重写run方法,作用是把出现异常的方法的图片附到Allure报表中
public class AllureReporterListener implements IHookable{
@Override
public void run(IHookCallBack callBack, ITestResult testResult) {
// 执行test方法, 执行具体的测试函数(@Test注解标注的方法)
callBack.runTestMethod(testResult);
//如果出现异常
if(testResult.getThrowable() != null){
//调用截图方法
try {
takeScreenShot(testResult.getMethod().getMethodName());
} catch (Exception e) {
e.printStackTrace();
}
}
}
//把生成的截图方法作为附件贴到Allure报表中 报告添加附件
@Attachment(value = “Failure in method {0}” , type = “image/png”)
private byte[] takeScreenShot(String methodName) throws Exception {
File screenshot = ScreenShotUtil.saveScreenShot();
//将文件File转换成byte数组
return Files.toByteArray(screenshot);
}

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
搭建一个接口自动化试框架可以使用以下工具和技术: 1. Python:作为主要开发语言,可以使用Python来编写试脚本和试用例。 2. Pytest:一款功能强大的Python试框架,可以用于编写和运行试用例,并提供丰富的断言和报告功能。 3. Allure:一个开源的报告生成工具,可以生成美观且易于理解的报告,支持多种语言和框架。 4. Git:版本控制工具,用于管理和同步试代码。 5. Jenkins:一个持续集成和持续交付工具,可以自动化运行试用例并生成报告。 6. Docker:容器化平台,可以用于创建和管理试环境,提供一致的运行环境。 下面是搭建接口自动化试框架的步骤: Step 1: 创建项目结构 在本地创建一个目录作为项目根目录,然后在根目录下创建以下子目录: - `tests`:存放试脚本和试用例; - `reports`:存放报告; - `config`:存放配置文件; - `utils`:存放一些工具类和函数。 Step 2: 编写试用例 在`tests`目录下编写试脚本和试用例。可以使用Pytest来组织和执行试用例,使用断言来验证试结果。 Step 3: 配置Allure报告 在`config`目录下创建一个`pytest.ini`文件,配置Allure报告的相关参数,例如报告保存路径、报告标题等。 Step 4: 运行试用例 使用Pytest运行试用例,并生成Allure报告。可以使用命令行或者集成到Jenkins中进行自动化执行。 Step 5: 集成Git和Jenkins 将项目代码托管到Git仓库中,并在Jenkins中配置相关任务,使其在代码提交后自动触发试用例的运行和报告的生成。 Step 6: 创建Docker镜像(可选) 使用Docker将试环境打包成镜像,方便部署和维护。 一些可能出现的问题和解决方法: 1. 安装依赖:在搭建过程中,可能会遇到安装依赖包的问题。可以使用pip来安装所需的Python包,并注意版本兼容性。 2. 配置问题:在配置Allure和Jenkins时,可能会遇到配置不正确或缺少必要参数的问题。可以参考官方文档或者搜索解决方案来解决这些问题。 3. 报告生成失败:如果生成Allure报告失败,可以检查相关依赖是否安装正确,以及路径和权限是否设置正确。 4. 试环境问题:如果试用例在不同环境中运行时出现问题,可以考虑使用Docker来创建一致的试环境,或者在试用例中添加环境适配代码。 相关问题: 1. 除了Allure,还有哪些常用的报告生成工具? 2. 如何在Pytest中使用断言来验证试结果? 3. 如何在Jenkins中配置任务来触发自动化试? 4. 除了接口自动化试,还有哪些类型的自动化试可以使用Python实现?

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值