当我的测试用例失败时,尤其是在我们的构建服务器上,我想拍一张屏幕的照片/屏幕截图,以帮助我调试后来发生的事情。我知道如何截取屏幕截图,但我希望 JUnit 中有一种方法可以在测试失败时在浏览器关闭之前调用我的 takeScreenshot()
方法。
不,我不想编辑我们的无数测试来添加 try/catch。我想,我可能会,只是可能会被说成注释。我所有的测试都有一个共同的父类,但我想不出有什么办法可以解决这个问题。
想法?
最佳答案
一些快速的搜索让我明白了这一点:
http://blogs.steeplesoft.com/posts/2012/grabbing-screenshots-of-failed-selenium-tests.html
基本上,他建议创建一个 JUnit4 Rule
,将测试 Statement
包装在他调用的 try/catch block 中:
imageFileOutputStream.write(
((TakesScreenshot) driver).getScreenshotAs(OutputType.BYTES));
这对你的问题有用吗?
关于java - Selenium 可以截取 JUnit 测试失败的屏幕截图吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12429793/