【发布时间】:2019-02-03 07:57:06
【问题描述】:
我正在用 Selenium 编写一个自动测试,但我的定位器有问题。网址:https://talixo.pl/register/?next=/。我找不到最后三个复选框的正确定位器。根据我使用的定位器,我得到一个错误'元素不可交互或复选框被勾选,但在新选项卡中打开链接“阅读更多”下的页面。没有“阅读更多”链接的复选框我没有这个问题请帮助!
public void clickDiscountsCheckBox(){
WebElement discountsCheckBox = driver
.findElement(By.xpath("//*[@id=\"id_terms_0\"]"));
discountsCheckBox.click();
这是我得到的错误:
org.openqa.selenium.ElementNotVisibleException:元素不可交互 (会话信息:chrome=71.0.3578.98) (驱动程序信息:chromedriver=2.45.615291 (ec3682e3c9061c10f26ea9e5cdcf3c53f3f74387),platform=Windows NT 10.0.17134 x86_64)(警告:服务器未提供任何堆栈跟踪信息) 命令持续时间或超时:0 毫秒
【问题讨论】:
-
为什么要使用 XPath 仅通过 ID 来定位元素?为什么不使用
By.id("id_terms_0")?另外,您是否尝试过等待可点击?