0

我想在 testng 的内部使用 remoteWebdriver 集成代码以截取屏幕截图onTestFailure(ITestResult)。我无法在里面获取当前的 webdriver 实例onTestFailure()

4

1 回答 1

0

Okay, I had a similar problem. And since there's no clear answer here, I would post my ( working) solution

On your BaseTest / TestBase class, make your RemoteWebdriver instance accessible ( either by having it as a public property or with a getter)

In the Listener class (In my case its a public property):

public class BaseTest {
    public RemoteWebDriver remoteDriver;
    //... initalize driver
}

public class TestListener implements ITestListener {
@Override
    public void onTestFailure(ITestResult result) {
        BaseTest test = (BaseTest) result.getInstance();
        if (test == null) {
            return;
        }
        RemoteWebDriver driver = test.remoteDriver;
    }
}
于 2021-02-03T09:34:04.513 回答