Selenium WebDriver出现问题,我正在使用它来自动执行一些任务。我使用Java Selenium。

<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
     <artifactId>selenium-java</artifactId>
    <version>2.47.1</version>
</dependency>


我正在网站上创建产品,经过积极的验证后,我获得了产品ID。然后,我尝试使用创建的ID搜索创建的产品,并打开与产品的链接。

<a role="textbox" href="javascript:void(0);" class="drilldown" name="Name" tabindex="-1">Name of product</a>


不幸的是,webdriver打开了“ javascript:void(0);”。新标签上的页面。当我尝试手动单击链接时,一切正常,并且打开产品页面。

当我尝试在网站上查找现有产品而不进行创建过程时,所有内容看起来都还不错,并且webdriver的行为符合我的期望。我的网页非常复杂,很多内容都是使用javascript / ajax等动态创建的。

我知道我没有提供很多细节。我正在尝试解决这个问题。目前只有WebDriver重置和打开新会话有用。

感谢您的回答,这是我无法解决的第一个严重问题。

最佳答案

您应该尝试使用JavascriptExecutor单击它,因为它直接在HTML DOM上起作用。根据您的方便随意在下面的代码中找到元素:

WebElement element=driver.findElement(By.xpath("Your Xpath"));
JavascriptExecutor executor = (JavascriptExecutor) driver;
executor.executeScript("arguments[0].click();", element);

10-07 19:30
查看更多