[英]How to get values of same class/properties in Selenium C#?
我目前正在自动执行测试,以比较摘要页面上的预期认可和实际认可。
我如何阅读摘要页面上显示的页面上的所有认可值。这些值可以更改,这意味着根据不同的输入可以有2-5个值。 我尝试过Xpath和CSS选择器,但是没有运气。 这是两个背书的元素属性,其余背书将具有相同的属性(明智的元素),只是值不同。
我希望能够获得页面上列出的所有认可,因此我可以将其输入到我的Excel工作表中,以与预期认可进行比较。
背书1:
<div class="guidance smaller ng-scope" ng-repeat="end in
prop.Endorsements">
<a ng-href="#c03770af-3724-4c3a-a240-e341c0d2c3ef" ng-bind-
html="end.Name" class="ng-binding" href="#c03770af-3724-4c3a-
a240-e341c0d2c3ef">Restricted Theft</a>
</div>
<a ng-href="#c03770af-3724-4c3a-a240-e341c0d2c3ef" ng-bind-
html="end.Name" class="ng-binding" href="#c03770af-3724-4c3a-a240-
e341c0d2c3ef">Restricted Theft</a>
背书2:
<div class="guidance smaller ng-scope" ng-repeat="end in
prop.Endorsements">
<a ng-href="#93ff9067-f64c-4879-933d-8b0a1d077e74" ng-bind-
html="end.Name" class="ng-binding" href="#93ff9067-f64c-4879-933d-
8b0a1d077e74">Malicious Damage Exclusion</a>
</div>
<a ng-href="#93ff9067-f64c-4879-933d-8b0a1d077e74" ng-bind-
html="end.Name" class="ng-binding" href="#93ff9067-f64c-4879-933d-
8b0a1d077e74">Malicious Damage Exclusion</a>
您需要一个XPath表达式来一次捕获所有a元素并将它们存储在列表中。
如果没有其他锚标签,则认可:
IList<IWebElement> listOfEndorsements= Driver.FindElements(By.XPath("//a"));
如果还有其他锚标记,则可以尝试:
IList<IWebElement> listOfEndorsements= Driver.FindElements(By.XPath("//div[contains(@ng-repeat,'prop.Endorsements')]/a"));
然后,您可以使用ForEach循环从IWebElements列表中提取所需的信息。
foreach (var endorsement in listOfEndorsements)
{
var text = endorsement.Text;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.