1

我试图把失败的测试用例的截图,但得到相关的自动化扩展的错误:无法承担失败的测试用例截图

public static String captureScreenshot(WebDriver driver, String screenshotName) 
{ 
try 
{ 
    TakesScreenshot ts = (TakesScreenshot)driver; 
    File source = ts.getScreenshotAs(OutputType.FILE); 
    String userDirector = System.getProperty("user.dir"); 
    String resultFile = userDirector 
      + "\\src\\main\\java\\utils\\screenshots\\"+screenshotName+".png"; 
    File destination = new File(resultFile); 
    FileUtils.copyFile(source, destination); 
    System.out.println("Screenshot Taken"); 
    return resultFile; 

} 
catch(Exception e) 
{ 
    System.out.println("Exception while taking screenshot" + e.getMessage()); 
    return e.getMessage(); 

} 

,这是我的课堂,我调用此方法

@AfterMethod (alwaysRun = true) 
public void tearDown(ITestResult result) throws InterruptedException, IOException{ 
    if (result.getStatus()==ITestResult.FAILURE){ 
     String screenshot_path=Screenshot.captureScreenshot(driver, result.getName()); 
     String image = logger.addScreenCapture(screenshot_path); 
     logger.log(LogStatus.FAIL, "Test Script Failed and TestScript name is ", image); 
     Thread.sleep(3000); 

    } 
     report.endTest(logger); 
     report.flush(); 
    //else if ((result.getStatus()== ITestResult.SUCCESS)){ 
    // logger.log(LogStatus.PASS, "test case Pass1" + result.getName()); 
    //} 
    //TestBase.updateResult(1, "result.getName()", "Pass", "I dont Know"); 

    driver.close(); 
} 

运行在这之后我收到以下错误:

TestCases failed and TestScript is KeepCookiesCheckInvalidScenario 
Exception while taking screenshotunknown error: cannot get automation 
extension 


from unknown error: page could not be found: chrome- 


extension://aapnijgdinlhnhlmodcfapnahmbfebeb/_generated_background_page.html 
(Session info: chrome=60.0.3112.113) 
(Driver info: chromedriver=2.27.440174 
(e97a722caafc2d3a8b807ee115bfb307f7d2cfd9),platform=Windows NT 10.0.14393 
    x86_64) (WARNING: The server did not provide any stacktrace information) 
    Command duration or timeout: 10.20 seconds 

我也试过b Ÿ这里不关闭驱动程序,但它不能正常工作,请帮助

+0

更新chromedriver? –

回答

0

如果您使用的是Chrome,然后尝试下面的代码为镀铬性质:

System.setProperty("webdriver.chrome.driver", "C:\\Utility\\BrowserDrivers\\chromedriver.exe"); 
ChromeOptions options = new ChromeOptions(); 
options.addArguments("test-type"); 
options.addArguments("start-maximized"); 
options.addArguments("--enable-automation"); 
options.addArguments("test-type=browser"); 
options.addArguments("disable-infobars"); 
WebDriver driver = new ChromeDriver(options); 

我希望你将能够解决上述使用您的问题代码。请享用 !