如何在不为winappdriver创建新会话的情况下为每个测试用例启动被测应用程序

时间:2019-06-21 15:52:19

标签: java selenium-webdriver appium winappdriver

我正在使用winappdriver在Java中自动化Windows应用程序,其中有三个测试用例,每个测试都需要启动该应用程序。我正在使用下面的代码初始化驱动程序并启动应用程序。

DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("app, "appPath");
capabilities.setCapability("platformName", "windows");
capabilities.setCapability("deviceName", "windowsPC");
capabilities.setCapability("appWorkingDir", "XXXXXXXX");
driver = new WindowsDriver(new URL("http://127.0.0.1:4723"), capabilities);

要为每个测试启动应用程序,我需要在每个测试用例之前运行上面的代码。这将导致驱动程序初始化三次。虽然我的测试通过了,但是在Eclipse控制台窗口中却显示以下消息。注意:我正在以编程方式启动winappdriver。只想知道什么是处理这种情况的最佳方法。

Eclipse Console Window

1 个答案:

答案 0 :(得分:0)

如何使用desktop session并从那里启动受测试的应用程序。在此会话中,您可以根据需要多次启动测试中的应用程序,而不必每次都重新启动WinAppDriver。

或者您可以在另一个测试中调用您的测试,因此仅在调用测试完成时才完成测试终结。

类似这样的东西(警告:C#中的伪代码):

[TestMethod]    
public void MainTest()
{
     TestA();
     TestB();
     TestC();
}