gpt4 book ai didi

java - 验证按钮是否可见 Selenium

转载 作者:行者123 更新时间:2023-11-29 04:35:42 25 4
gpt4 key购买 nike

我有一个测试脚本,它基本上为不同的用户分步执行了多个步骤。一些用户会看到一个特定的按钮,而另一些用户则不会。

我创建了一个方法来检查按钮是否显示如下:

public boolean check_create_new_item_button_visible(){

Boolean visible = driver.findElement(By.linkText("New Item")).isDisplayed();
return visible;
}

调用方式如下:

boolean visible = npc.check_create_new_item_button_visible();

但我总是得到错误:

org.openqa.selenium.NoSuchElementException: no such element: Unable to locate element: {"method":"link text","selector":"New Item"}

这是您所期望的,因为按钮不可见。

这可能是一个愚蠢的错误,但我如何才能知道按钮是否在屏幕上,以便我的程序可以继续?

顺便说一下,我将代码移到了程序的一部分,其中按钮可见并且 boolean 值 visible 返回 true。因此,如果按钮可见,则代码有效。

最佳答案

如果 driver.findElement 找到元素则返回该元素,如果未找到该元素则抛出 NoSuchElementException。为避免异常,您可以使用 findElements 并检查返回的列表是否包含元素,如果有则检查第一个元素是否可见

public boolean check_create_new_item_button_visible() {
List<WebElement> buttons = driver.findElements(By.linkText("New Item"));
if (buttons.size() > 0 && buttons.get(0).isDisplayed())
{
return true;
}
return false;
}

关于java - 验证按钮是否可见 Selenium,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41689596/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com