5

我的简单 WPF 应用程序包含一个复选框。我正在尝试使用 Windwos 应用程序驱动程序自动测试此应用程序。创建会话后,单击该复选框。之后我想验证复选框是否被选中。但是复选框对象的类型是 WindowsElement 所以我的代码不能工作。

换句话说:如何在 WinAppDriver 测试中访问这些控件类型?

https://docs.microsoft.com/en-us/windows/win32/winauto/uiauto-controltypesoverview

<CheckBox AutomationProperties.AutomationId="CheckBox1"/>
[Test Method]
public void TestMethod1()
{
            const string WindowsApplicationDriverUrl = "http://127.0.0.1:4723";
            const string SimpleWPFTestID = @"C:\Users\bla\source\repos\SimpleWPFApp\SimpleWPFApp\bin\Debug\SimpleWPFApp.exe";

            DesiredCapabilities appCapabilities = new DesiredCapabilities();
            appCapabilities.SetCapability("app", SimpleWPFTestID);

            var session = new WindowsDriver<WindowsElement>(new Uri(WindowsApplicationDriverUrl), appCapabilities);

            WindowsElement CheckBox1 = session.FindElementByAccessibilityId("CheckBox1");
            CheckBox1.Click();
            Assert.IsTrue(CheckBox1.IsChecked); // this line does not work :-(
}
4

1 回答 1

2

非常感谢,PixelPlex!就是答案。我也看过这个答案。现在它可以工作了:-)

Assert.IsTrue(CheckBox1.Selected);
于 2019-08-13T14:26:36.887 回答