testng执行测试用例的时候,如果用例执行失败会自动截图,方便后续排查问题 1.首先定义一个截图类: package com.rrx.utils; import java.io.File;import java.io.IOException;import java.util.Date; import org.apache.commons.io.FileUtils;import org.openqa.selenium.OutputType;import org.openqa.selenium.T…
注: 以下内容引自 http://blog.csdn.net/sunnyyou2011/article/details/45894089 (此非原出处,亦为转载,但博主未注明原出处) 使用Testng框架搭建自动测试框架,经常会需要增加失败自动截图,以及失败重跑功能,下面介绍一下不修改Testng的源码,通过监听器的方式来实现自动截图.重跑.以及自定义生成的Html结果文件功能.自动截图功能1.新建一个Java类继承TestListenerAdapter2.重写onTestFailure.onT…
testng执行case failed ,testng Listener会捕获执行失败,如果要实现失败自动截图,需要重写Listener的onTestFailure方法 那么首先新建一个Listener 类,继承TestListenerAdapter package com.dbyl.libarary.utils; import org.openqa.selenium.WebDriver; import org.testng.ITestContext; import org.testng.ITe…
前言: 装饰器其实就是一个以函数作为参数并返回一个替换函数的可执行函数 上一篇讲到用装饰器解决异常后自动截图,不过并没有与unittest结合,这篇把截图的装饰器改良了下,可以实现用例执行失败自动截图. 一.不带变量的装饰器 1.参考资料:http://www.artima.com/weblogs/viewpost.jsp?thread=240845,这里这篇讲的很好,可以看下原文 2.这个是不带变量的装饰器__init__里是初始化参数,__call__里面是原函数参数 Decorators…
原生的unittest框架是不支持case失败后自动截图的功能的,网上看了大家的解决办法,大体上分为两种:1.要么加装饰器2.也有人封装断言这里我们看看还有没有其他的更加方便的方法值得大家一起探讨一下: 找不到元素后自动截图 如果使用selenium的话(相比于selenium,我更加喜欢airtest,这个后面的文章会提到airtest的UI自动化设计),我们知道不管是sendkeys.click.doubleclick 等操作还是assert都会去调用find_element 方法,我们完全…
哈哈哈,很久没写博客了,懒了. 因为一些原因最近需要把监听事件重新整理一下,开始没细想,直接copy网上的,其实结果发现报错很多,或者是达不到效果,然后把之前的代码翻出来,仔细看了一下.下面给一些需要的小伙伴整理一下思路: 1.首先我们用到的是testng里面的监听,所以这个毋庸置疑 2.我们需要重新他的监听事件 3.用例中肯定需要加入监听事件 这三点是网上公认的,但是怎么做确没有说明白. 首先看一下我的目录结构: 图片中我有4个类, 1.driverBase是一个基类,里面是driver的初始…
以下代码是在QC里运行QTP来执行脚本过程,当执行过程中发现用例失败后就会自动截图,然后把用例返回到最初始的状态,模拟了场景恢复的机制 Class QCImageErrorCapture Dim qtpApp Sub Class_Initialize() Set qtpApp = CreateObject("QuickTest.Application") If qtpApp.CurrentDocumentType = "Test" Then qtpApp.Test.…
一般web应用程序出错过后,会抛出异常.这个时候能截个图下来,当然是极好的. selenium自带了截图功能. //获取截图file File scrFile= ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE); //将图片移动到指定位置 FileUtils.moveFile(scrFile, new File(newFilePath)); 当然在截图之前 需要判断新路径是否合法.下面贴出整体的代码. package commo…
一般web应用程序出错过后,会抛出异常.这个时候能截个图下来,当然是极好的. selenium自带了截图功能. //获取截图file File scrFile= ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE); //将图片移动到指定位置 FileUtils.moveFile(scrFile, new File(newFilePath)); 当然在截图之前 需要判断新路径是否合法.下面贴出整体的代码. package commo…
转载自:https://blog.csdn.net/galen2016/article/details/70193684 重写Listener的onTestFailure方法 package com.kdzwy.practice; import java.io.File; import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Date; import org.apache.commons.i…