我一直在测试的应用程序允许查看客户先前选择的项目的图像。为此,在网页底部提供了一个HTML链接列表。例如,如果客户选择了酒精饮料,HTML链接可能如下所示:
伏特加-酒精饮料
啤酒-酒精饮料
杜松子酒
等。
当我创建我编码的UI脚本时,识别整个文本是一项简单的任务。“伏特加-酒精饮料”作为have超链接的InnerText,让我的脚本点击它。
然而,我无法预测之前选择了哪种饮料,例如伏特加、啤酒或杜松子酒,而InnerText的一个变体(我的例子中的“伏特加-酒精饮料”)无法匹配所有可能的饮料名称。正因为如此,编码的UI脚本大部分失败(除非选择伏特加)。
因此,从HTML链接中删除饮料的名称是合乎逻辑的,并让我编写的UI脚本找到并单击保持不变的单词“酒精饮料”。这就是我坚持的地方。
对于如何完成这项任务,我将不胜感激。
这是唯一只适用于一场比赛的作品。
HtmlHyperlink alcoholDrinksLink = new HtmlHyperlink(PreSelectedPage);
alcoholDrinksLink.SearchProperties.Add("ControlType", "Hyperlink");
alcoholDrinksLink.SearchProperties.Add("InnerText", "Vodka - Alcohol Drinks");
Mouse.Click(alcoholDrinksLink);发布于 2017-03-31 12:11:45
在与我们的开发人员一起工作之后,我们找到了以下解决方案:
HtmlTable hyperlinksBox =新的HtmlTable(reviewPurchaseHtmlDocument);//标识带有所有超链接的容器(或框)
hyperlinksBox.SearchProperties.Add("Id",“DEApplication:content:vc:dt1 1”);//添加搜索属性以查找表
HtmlControl超链接=新的HtmlControl(hyperlinksBox);//标识驻留在容器hyperlink.SearchProperties.Add("TagName",“A”)中的每个超链接;UITestControlCollection drinksHyperlinks = hyperlink.FindMatchingControls();
foreach (var link in drinksHyperlinks)
{
Mouse.Click(link); //click the link
Playback.Wait(5000); //and review it for 5 seconds
}https://stackoverflow.com/questions/43053608
复制相似问题