Java 如何用相同的文本测试2个不同的链接?
我正在测试网页上是否存在链接。为此,我正在测试exJava 如何用相同的文本测试2个不同的链接?,java,testing,selenium-webdriver,Java,Testing,Selenium Webdriver,我正在测试网页上是否存在链接。为此,我正在测试ex“Selenium Videos”的特定文本是否在标记中。但是有两个相同的链接,比如--“如何掌握QTP?”,在第一页的菜单中,第二页在页面右侧的最近的免费在线研讨会中。我不知道如何测试这两个不同的链接有相同的链接文本。使用下面编写的函数,如果搜索第二个链接文本,它将返回true,但它将找到第一个链接文本。请帮忙 我使用以下函数来测试链接 public static String checkLink(WebDriver driver,String
“Selenium Videos”
的特定文本是否在
标记中。但是有两个相同的链接,比如--“如何掌握QTP?”
,在第一页的菜单中,第二页在页面右侧的最近的免费在线研讨会中。我不知道如何测试这两个不同的链接有相同的链接文本。使用下面编写的函数,如果搜索第二个链接文本,它将返回true,但它将找到第一个链接文本。请帮忙
我使用以下函数来测试链接
public static String checkLink(WebDriver driver,String linkText)
{
//purpose : check if the link for text is available
//ip: driver,xPath,Data
try
{
List <WebElement> links = driver.findElements(By.tagName("a"));
for(WebElement we : links)
{
if(linkText.equals(we.getText()))
{
System.out.println("Link text from excel is:" + linkText);
System.out.println("Link text from element is:" + we.getText());
return "Pass";
}//if
}//for
}
catch(Exception e)
{
return "Fail";
}//catch
return "Fail";
}//enter text
publicstaticstringchecklink(WebDriver驱动程序,stringlinktext)
{
//目的:检查文本链接是否可用
//ip:驱动程序、xPath、数据
尝试
{
列表链接=driver.findElements(按.tagName(“a”));
for(WebElement-we:links)
{
if(linkText.equals(we.getText()))
{
System.out.println(“excel中的链接文本为:“+linkText”);
System.out.println(“来自元素的链接文本为:+we.getText());
返回“通行证”;
}//如果
}//为了
}
捕获(例外e)
{
返回“失败”;
}//抓住
返回“失败”;
}//输入文本
使用xpath并在xpath中包含父元素或同级元素。您提到了两个不同的标签或描述,您可以在xpath中使用它们是否需要为一个特定的网站fot???如果是,你能提供该网站的链接吗?@user1177636你说得对!谢谢大家。我在那个函数中添加了xPath,我可以找到那些链接。老实说,你是怎么从这个问题中得到这些的?我可以理解答案是否是使用适当的定位器,但为什么具体使用XPath?为什么需要在XPath中包含父级或同级?没有HTML你怎么知道呢?