Selenium / ChromeDriver - 单击元素的中心

Tre*_*opz 5 java automation selenium-chromedriver selenium-webdriver

所以我今天遇到了一个我没有遇到过的新问题,它与 Chrome 驱动程序的性质有关(我相信 Chrome 是唯一这样做的......)。我知道当您使用 .click() 单击某个元素时,它会在中心单击。然而,这很麻烦,因为我试图单击一个复选框,而该复选框恰好有一个嵌套在中心的链接。 在此输入图像描述

我也尝试过使用 JavaScript Executor,但没有成功。有谁知道解决这个问题的方法吗?是的,我尝试过访问该框,但它没有我可以使用的标识符。

在此输入图像描述

小智 1

由于您没有在此处添加复选框 html,我假设它类似于:

<input type="checkbox" id="checkbox_id">
<label for="checkbox_id">Something</label>
Run Code Online (Sandbox Code Playgroud)

因此,您只需单击输入而不是标签。它看起来像这样:

driver.findElemnt(By.id("checkbox_id")).click();
Run Code Online (Sandbox Code Playgroud)

或者使用 xPath:

 driver.findElemnt(By.xpath("//input[@type='checkbox']")).click();
Run Code Online (Sandbox Code Playgroud)