我试图在下面的图片中检查两件事:
1.导航栏正在页面上显示,尺寸正确。
2.文本" Home","关于我们"正确地显示在导航栏上并且是网络链接(意味着它们正常工作并且没有损坏)。
要检查所有链接是否正常工作,我已将其编码,但我不确定这是否正确 -
List<WebElement> linkElements = driver.findElements(By.tagName("a"));
String[] linkTexts = new String[linkElements.size()];
int i = 0;
// extract the link texts of each link element
for (WebElement e : linkElements) {
logger.info(linkTexts[i] = e.getText());
i++;
}
for (String l : linkTexts) {
driver.findElement(By.linkText(l)).click();
if (driver.getTitle().equals(title)) {
System.out.println("\"" + l + "\""
+ " is not Working.");
} else {
System.out.println("\"" + l + "\""
+ " is working.");
}
driver.navigate().back();
}
}
答案 0 :(得分:1)
1)你可以使用'getCssValue'方法获取菜单栏的尺寸。
Eg:
driver.findElements(By.xpath("//td[@class='panelGridInputCol']")).getCssValue("CSSAtribute");
2) (a)要检查导航栏上是否正确显示“HOME”和“关于我们”,您可以再次使用“getCssValue”方法。 (b)
List<WebElement> allLinks = driver.findElements(By.tagName("a"));
for (WebElement w : allLinks)
{
w.click();
if (driver.findElement(By.xpath("Element on the page")).isDisplayed())
{
System.out.println("Link:"+w.getText()+"is working");
}
else
{
System.out.println("Link:"+w.getText()+"is not working");
}
driver.navigate().back();//To come back to the Home screen
}
答案 1 :(得分:0)
const selector = { className: 'navbar-nav'}
const navbar = () => driver.findElement(selector);
expect(await navbar().getText()).toContain('Home');
expect(await navbar().getText()).toContain('About Us');