0

早上好,

我希望为 Windows 应用程序生成简单的 UI 测试,例如从开始菜单启动一个应用程序并使用该应用程序打开一个文件。

我希望允许任何用户像上面那样记录一个简单的 UI 测试,我一直在寻找微软的 WinAppDriver,是的,驱动程序本身很适合根据通过测试资源管理器运行给出的示例运行测试。

我一直在查看 Git 中提供的 UIrecorder,它似乎符合我的一些要求。

我目前正在记录 RecordedUiTask,但我不明白 C# 生成的 MyDesktopSession 对象是什么以及如何在测试中对其进行初始化。

下面的例子:

 string xp0 = "/Pane[@Name=\"Desktop 1\"][@ClassName=\"#32769\"]/Window[@Name=\"Untitled - Notepad\"][@ClassName=\"Notepad\"]/Document[@Name=\"Text Editor\"][@ClassName=\"Edit\"]";
 var winElem0 = MyDesktopSession.FindElementByXPath(xp0);
 if (winElem0 != null)
 {
     winElem0.Click();
 }

我不知道是否有价格合理的商业软件或开源软件可以做到这一点?

任何帮助将不胜感激。

谢谢

4

2 回答 2

0

MyDesktopSession 对象在 UIRecorderTemplate 中定义,可以在 Git 存储库中找到。

public static WindowsDriver<WindowsElement> DesktopSession;
if (DesktopSession == null)
{
     DesiredCapabilities appCapabilities = new DesiredCapabilities();
     appCapabilities.SetCapability("app", "Root");
     appCapabilities.SetCapability("deviceName", "WindowsPC");
     DesktopSession = new WindowsDriver<WindowsElement>(new 
            Uri(WindowsApplicationDriverUrl), appCapabilities);
}

对象名称不同,但这为您提供了 UIRecorder 使用的主要对象。

于 2018-10-01T13:23:27.257 回答
0

至于长期运行时间,您从桌面开始,然后深入了解您的 AUT。这意味着必须搜索整个桌面(所有正在运行的程序)才能找到该字段。如果您在记事本上开始搜索,它应该会更快。以下是关于选择器性能的答案:Selenium Element Selectors - I think xPath is slowest?

于 2018-10-08T10:53:17.693 回答