Webdriver take screen shot when case failed use TestNG
来源:互联网 发布:汇编数组 编辑:程序博客网 时间:2024/05/16 19:03
Is there a good way to capture screenshots when running tests in parallel on the method level?
In order to run tests in parallel, each individual test needs a unique driver instance. So, at any given time you have x number of driver instances running. When it comes time to capture a screenshot, how do you determine which driver to use?
If you create a base test class with access to the driver, then that driver will always be the correct driver
The following will achieve this;
All test classes must extend a simple base test class;
- public asbtract baseTestCase() {
- private WebDriver driver;
- public WebDriver getDriver() {
- return driver;
- }
- @BeforeMethod
- public void createDriver() {
- Webdriver driver=XXXXDriver();
- }
- @AfterMethod
- public void tearDownDriver() {
- if (driver != null)
- {
- try
- {
- driver.quit();
- }
- catch (WebDriverException e) {
- System.out.println("***** CAUGHT EXCEPTION IN DRIVER TEARDOWN *****");
- System.out.println(e);
- }
- }
- }
public asbtract baseTestCase() { private WebDriver driver; public WebDriver getDriver() { return driver;} @BeforeMethod public void createDriver() { Webdriver driver=XXXXDriver(); } @AfterMethod public void tearDownDriver() { if (driver != null) { try { driver.quit(); } catch (WebDriverException e) { System.out.println("***** CAUGHT EXCEPTION IN DRIVER TEARDOWN *****"); System.out.println(e); } } }
In your listener, you need to access the base class;
- public class ScreenshotListener extends TestListenerAdapter {
- @Override
- public void onTestFailure(ITestResult result)
- {
- Object currentClass = result.getInstance();
- WebDriver webDriver = ((BaseTest) currentClass).getDriver();
- if (webDriver != null)
- {
- File f = ((TakesScreenshot) webDriver).getScreenshotAs(OutputType.FILE);
- //etc.
- }
- }
0 0
- Webdriver take screen shot when case failed use TestNG
- Webdriver take screen shot when case failed use TestNG
- Webdriver MouseMove and Screen Shot
- Webdriver MouseMove and Screen Shot
- How to config firefox's preference when use webdriver
- android screen shot
- C# - Screen Shot Implementation
- android adb screen shot
- Capture a Screen Shot
- use case when on the outer join condition
- Tricks to use Case-when in where clause
- Learn note(cpp): take care when use new in a code block.
- CASE WHEN
- Case when
- CASE WHEN
- CASE WHEN
- case when
- case when
- 微信硬件平台框架说明及接入流程
- sql的limit
- 黑马程序员——JAVA基础之 == 和equals区别
- 互联网的发展的确太快,Web前端技术也在花样翻新
- python(http\json\file)
- Webdriver take screen shot when case failed use TestNG
- iOS开发:UITableView加载多张照片导致内存上涨的问题
- Linux笔记 6 (自举程序GRUB配置与应用)
- 初学 Java Web 开发,请远离各种框架,从 Servlet 开发
- 英语中的连读规则
- json的使用
- Drawables
- Listener 监听器
- 【图像处理】图像配准技术