如何解决如何在远程计算机上以编程方式启动WinAppDriver
我的测试设置包括2台Windows计算机,第一个测试运行器将在c#中包含我的测试代码,第二个测试运行器将在其中安装winappdriver和被测应用程序。
我想通过C#代码在测试代理中启动winappdriver,该代码将在测试运行器上运行。另外,一旦测试执行结束,我想关闭winappdriver。
这怎么办?感谢任何线索。
解决方法
您可以在测试初始化类中使用 [BeforeTestRun] 属性。假设 winappdriver 安装在测试机器的相同路径中。我在我的 azure 代理中使用它
[BeforeTestRun]
public static void TestSetup()
{
Process.Start(@"C:\Program Files (x86)\Windows Application Driver\WinAppDriver.exe");
Process.Start(@"Your application Path");
}
测试运行后,如果要关闭 Winappdriver,可以使用 AfterTestRun 属性。 Basepage 有 WinappDriver 的静态实例
[AfterTestRun]
public static void TearDownReport()
{
BasePage.WindowsDriver.Close();
BasePage.WindowsDriver.Dispose();
}
,
对于 Java 特定项目:您可以通过以下方式进行 - 假设 WinAppDriver 安装在默认位置 - 即C:/Program Files (x86)/Windows 应用程序驱动程序
1st:
String command = "C:/Program Files (x86)/Windows Application Driver/WinAppDriver.exe";
Runtime.getRuntime().exec(command);
2nd:
String command = "C:/Program Files (x86)/Windows Application Driver/WinAppDriver.exe";
ProcessBuilder builder = new ProcessBuilder(command).inheritIO();
Process process = builder.start();
Dont forget to dispose it by-
winDriver.close();
winDriver.quit();
or for 2nd approach-
process.destroy();
根据需要将它们转换为 init 或 BeforeTest Methods 的一部分。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。