我正在尝试查找具有Attribute的元素。好吧,我可以在Selenium中找到具有Id,tagName,Xpath和所有其他预定义方法的元素。但是,我正在尝试编写一种方法,该方法将给定属性名称和值作为输入专门返回WebElement。
List<WebElement> elements = webDriver.findElements(By.tagName("Attribute Name")); for(WebElement element : elements){ if(element.getText().equals("Value of Particular Attribute")){ return element; } else{ return null; } }
假设XPath不是一个选择,还有其他更好的方法吗?
您可以使用CSS轻松完成此任务。
公式为:
element[attribute='attribute-value']
所以如果有的话
<a href="mysite.com"></a>
您可以使用以下方法找到它:
By.cssSelector("a[href='mysite.com']");
这可以使用任何可能的属性。
此页面在此提供了有关如何制定有效的CSS选择器以及如何匹配其属性的良好信息:http : //ddavison.io/css/2014/02/18/effective-css- selectors.html