我目前有一个质量检查人员和一个培训环境。我想测试特定的网页是否显示相同的对象。 (即,两个页面都必须在两个环境中显示相同的输入,链接,标签,文本区域等)。我目前使用量角器黄瓜框架运行e2e测试。是否可以编写代码进行此比较并在质量检查和培训页面中输出不匹配项(如果有)。
答案 0 :(得分:0)
有两种方法可以做到这一点
但是第一个选择将非常容易且有效
使用以下代码获取屏幕截图
public static void takeSnapShot(WebDriver webdriver,String fileWithPath) throws Exception{
TakesScreenshot scrShot =((TakesScreenshot)webdriver);
File SrcFile=scrShot.getScreenshotAs(OutputType.FILE);
File DestFile=new File(fileWithPath);
FileUtils.copyFile(SrcFile, DestFile);
}
使用Sikulix API将图像与当前屏幕进行比较
Screen screen = new Screen();
screen.setAutoWaitTimeout(30000);
screen.wait(new Pattern("img/image.PNG")).click();
screen.wait(new Pattern("img/image.PNG").exact()).click();
或者您可以使用Appli tool比较两个图像文件。