插件Jenkins在错误执行之前捕获html?

时间:2017-12-05 12:26:09

标签: selenium jenkins

有没有人知道如何在使用Selenium Webdriver在测试用例中出现错误之前捕获html / url? 我需要知道以前的网址,而且我不知道如何... 我用Jenkins来测试。

我需要一些shell命令来进行屏幕截图并保存在某个目录中。 怎么可能是shell代码?

我尝试过:UI TEST CAPTURE插件 但它没有用......它不允许我配置它。我不知道为什么。 (我在图片中向您展示)UI TEST CAPTURE Plugin

我已将以下内容写入我的测试用例java文件:

String actualTest = this.getClass().getName()+"."+testname.getMethodName();
File scrFile = ((TakesScreenshot)FabricaWebDriver.getDriver()).getScreenshotAs(OutputType.FILE);
FileUtils.copyFile(scrFile, new File("target/screenshots/"+actualTest+".png"));

但它只有在测试成功时才有效。 当测试失败时,我需要它......,而我却无法得到它。

我已尝试过这些条件,我会在图片中向您展示,但它不起作用,我不明白为什么...... string matches

2 个答案:

答案 0 :(得分:0)

关于捕获网址,我假设您的网站会引导您访问www.yoursite.com/error.htm等网页或类似内容?

在这种情况下,您唯一的选择是在每个Selenium操作之前存储URL,这很痛苦

C#:

var currentURL = Driver.Url;

或者,如果您指的是处理异常,那么您只需捕获catch块中的URL。

答案 1 :(得分:0)

完成!有了这个:

             try{
         driver.findElement(By.xpath("xxxxx")).click();
     }
     catch (Exception e) {
         takeScreenshot(driver,e);
     }
     finally {
         driver.close();
    }

有效!