首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在编码的UI中,如何识别和单击HTML链接的部分

在编码的UI中,如何识别和单击HTML链接的部分
EN

Stack Overflow用户
提问于 2017-03-27 18:12:12
回答 1查看 52关注 0票数 0

我一直在测试的应用程序允许查看客户先前选择的项目的图像。为此,在网页底部提供了一个HTML链接列表。例如,如果客户选择了酒精饮料,HTML链接可能如下所示:

伏特加-酒精饮料

啤酒-酒精饮料

杜松子酒

等。

当我创建我编码的UI脚本时,识别整个文本是一项简单的任务。“伏特加-酒精饮料”作为have超链接的InnerText,让我的脚本点击它。

然而,我无法预测之前选择了哪种饮料,例如伏特加、啤酒或杜松子酒,而InnerText的一个变体(我的例子中的“伏特加-酒精饮料”)无法匹配所有可能的饮料名称。正因为如此,编码的UI脚本大部分失败(除非选择伏特加)。

因此,从HTML链接中删除饮料的名称是合乎逻辑的,并让我编写的UI脚本找到并单击保持不变的单词“酒精饮料”。这就是我坚持的地方。

对于如何完成这项任务,我将不胜感激。

这是唯一只适用于一场比赛的作品。

代码语言:javascript
复制
HtmlHyperlink alcoholDrinksLink = new HtmlHyperlink(PreSelectedPage);     
alcoholDrinksLink.SearchProperties.Add("ControlType", "Hyperlink");        
alcoholDrinksLink.SearchProperties.Add("InnerText", "Vodka - Alcohol Drinks");
Mouse.Click(alcoholDrinksLink);
EN

回答 1

Stack Overflow用户

发布于 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();

代码语言:javascript
复制
       foreach (var link in drinksHyperlinks)
       {

           Mouse.Click(link); //click the link 
           Playback.Wait(5000); //and review it for 5 seconds
       }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43053608

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档