1

我开发了一个简单的 WPF 应用程序。我想对我的应用程序进行一些 UI 自动化测试。我开始关注本教程,了解如何使用 Appium 和 Windows 应用程序驱动程序进行自动化。

作为为测试 Windows Calculator 应用程序设置测试环境的一部分,将以下行添加到测试脚本中:

protected const string WindowsApplicationDriverUrl = “http://127.0.0.1:4723";

DesiredCapabilities appCapabilities = new DesiredCapabilities();

appCapabilities.SetCapability(“app”, “57b3a460–8843–4d84–822a-9f316274c2bf_tz6ph9wdjhqw8!App”);

IOSDriver<IOSElement> AppSession = new IOSDriver<IOSElement>(new Uri(WindowsApplicationDriverUrl), appCapabilities);

查看第 3 行,提供了一个应用程序标识符来设置 DesiredCapabilities。我的问题是我无法为我的 WPF 应用程序查找或生成类似的应用程序 ID。在教程的后面,作者提到:

“在第三行中,我们为“app”设备能力设置了一个奇怪的标识符。你需要用你的值替换这个值。可以在RegisteredUserModeAppID节点下找到生成的AppX\vs.appxrecipe文件。

<RegisteredUserModeAppID>57b3a460–8843–4d84–822a-9f316274c2bf_tz6ph9wdjhqw8!App</RegisteredUserModeAppID>"

你能告诉我这个 appID 是如何在 Visual Studio 中生成的吗?另外,是否有其他方法可以在不提供 appID 的情况下设置 DesiredCapabilities?可以为此目的使用 GUID 吗?

4

2 回答 2

3

只有 UWP 应用程序具有应用程序 ID,经典的 Windows 应用程序可以使用可执行文件的路径启动:

appCapabilities.SetCapability("app", pathToYourExecutable);

另请参阅 WinAppDriver 的自述文件: 测试经典 Windows 应用程序

于 2018-12-08T17:29:31.790 回答
0

当你调试你的应用程序时,你应该能够找到它。如果您调试应用程序并在第一个实例中设置断点。

然后在您的调试选项卡中,您应该能够查看您正在寻找的节点。

于 2017-11-23T17:01:10.813 回答