无法使用编码的UI测试在组合框中选择值

时间:2017-09-07 05:14:54

标签: coded-ui-tests

        WinComboBox comboxBox = new WinComboBox();  
        comboxBox.SearchProperties[WinComboBox.PropertyNames.Name] = "Server:";
        comboxBox.WindowTitles.Add("Server Settings");
        comboxBox.SearchProperties[WinComboBox.PropertyNames.TechnologyName] = "Server";
        comboxBox.SearchProperties[WinComboBox.PropertyNames.ControlName] = "comboBoxPlatforms";
        comboxBox.SelectedItem = "Value3";     

我使用上面的代码在使用Coded UI测试的组合框中选择一个值。

但我收到了错误

  

System.NotSupportedException:控件类型不支持“SelectedItem”的GetProperty:Window

有谁能告诉我我做错了什么或给我一个替代解决方案?

2 个答案:

答案 0 :(得分:0)

有时我添加这个:comboxBox.TechnologyName =“MSAA”;

我认为不需要WindowTitles。

也试试 Mouse.click(comboBox)和playback.wait(1000);以上comboxBox.SelectedItem =" Value3&#34 ;;排除一些常见问题。如果这样可以解决您的问题,那么您可以开始重构。

我希望它有所帮助。

答案 1 :(得分:0)

正如异常所指出的,您拥有的UITestControl对象是ControlType WINDOW,这就是您无法对其执行SetProperty的原因。 我也会在搜索时指定父控件。 WinComboBox comboxBox = new WinComboBox(WinWIndow Parent); 如果您的控件是WinCombobox,请尝试: combobox.SetProperty(" SelectedItem"," Value3"); 另外如果您知道该项目的索引,请尝试: combobox.SetProperty(" SelectedIndex",3); 如果它解决了您的问题,请告诉我