我正在尝试使用以下代码段使用编码的UI工具(C#)检查网页中的两个复选框。
HtmlCheckBox chkVeh = new HtmlCheckBox(BrowserInstance);
chkVeh.SearchProperties.Add(HtmlCheckBox.PropertyNames.Name, "checkbox1");
chkVeh.SearchProperties.Add(HtmlCheckBox.PropertyNames.Value, "Option1");
chkVeh.Checked = true;
HtmlCheckBox chkVeh1 = new HtmlCheckBox(BrowserInstance);
chkVeh1.SearchProperties.Add(HtmlCheckBox.PropertyNames.Name, "checkbox1");
chkVeh1.SearchProperties.Add(HtmlCheckBox.PropertyNames.Value, "Option2");
chkVeh1.Checked = true;
当我执行它时。它检查所需的复选框,但不知何故在转到下一步之前,它再次单击该复选框并取消选中该复选框。最后,我留下了2个未选中的复选框。
例如,检查了Checkbox1 checkbox1未选中 选中Checkbox2 Checkbox2未选中
我正在使用Visual Studio 2012。 这个行为有什么指针吗?
答案 0 :(得分:0)
我有一个建议执行以下步骤:
在单词中粘贴代码使用手工编码脚本中使用的过滤器和搜索参数,可以轻松识别编码UI脚本所需的参数
答案 1 :(得分:0)
您可以使用自定义类来查找是否选中了CheckBox。请找到代码:
string PropertyText = UITestControl.GetProperty("Checked").ToString();
如果返回false,请使用mouse.click();
答案 2 :(得分:0)
复选框可能有其他代码,只能通过点击它们来检查它们,或者以用户的方式与它们交互(而不是通过直接更改属性)。如果可以单击这些框,请尝试使用:
chkVeh.EnsureClickable();
Mouse.Click(chkVeh);
并查看是否能解决问题。