我有一些网页,其中包含某些单词的超链接,也可以重复。我需要验证每个单词的超链接,例如单词public class MainAgent
{
private ILogger log;
public MainAgent(ILogger _log)
{
log = _log;
}
public void Start()
{
//Main Application Code here.
Console.WriteLine("main Agent Started.");
log.Info("Logging through logger in MainAgent Class");
Console.ReadLine();
}
}
,在该页面中为3次。点击每个头痛后,同一页面打开。
是否有任何方法可以为所有单词headache
返回XPath,因为为了自动化,我需要点击每个headache
并验证网址。
我可以手动编写XPath,但如果同一页面上有很多headache
个单词有超链接怎么办?
答案 0 :(得分:0)
您可以尝试使用此xpath = //a[text()='headache']
或使用linkText driver.findElements(By.linkText("headache"))
找到
List<Webelement> ele = driver.findElements(By.linkText("headache"))
for(Webelement link: ele){
link.click();
// other operation
}
答案 1 :(得分:0)
在xpath中,您必须声明元素类型,例如:
driver.findElements(By.xpath(".//link[text()='headache']")).forEach(WebElement::click)
此外,如果您只需检查链接是否正确,您可以使用Rest Assured库并通过http发送获取请求。