【问题标题】:Not able to click on the webpage Link using HtmlUnitDriver but Same is working with FirefoxDriver. Why?无法使用 HtmlUnitDriver 单击网页链接,但 Same 正在使用 FirefoxDriver。为什么?
【发布时间】:2011-07-22 11:50:27
【问题描述】:

当我尝试使用FirefoxDriver 使用下面的代码行单击链接时,它工作正常。

WebDriver driver = new FirefoxDriver();
driver.findElement(By.linkText("More...")).click();

但是当我使用HtmlUnitDriver 时,我遇到了异常。

org.openqa.selenium.NoSuchElementException: No link found with text: More...
System info: os.name: 'Windows 7', os.arch: 'x86', os.version: '6.1', java.version: '1.6.0_24'
Driver info: driver.version: HtmlUnitDriver
    at org.openqa.selenium.htmlunit.HtmlUnitDriver.findElementByLinkText(HtmlUnitDriver.java:630)
    at org.openqa.selenium.By$2.findElement(By.java:93)
    at org.openqa.selenium.htmlunit.HtmlUnitDriver$4.call(HtmlUnitDriver.java:1198)
    at org.openqa.selenium.htmlunit.HtmlUnitDriver$4.call(HtmlUnitDriver.java:1)
    at org.openqa.selenium.htmlunit.HtmlUnitDriver.implicitlyWaitFor(HtmlUnitDriver.java:934)
    at org.openqa.selenium.htmlunit.HtmlUnitDriver.findElement(HtmlUnitDriver.java:1195)
    at org.openqa.selenium.htmlunit.HtmlUnitDriver.findElement(HtmlUnitDriver.java:377)
    at com.search.engine.BotwSearchEngine.isPageExists(BotwSearchEngine.java:154)
    at com.search.engine.BotwSearchEngine.searchCategories(BotwSearchEngine.java:82)
    at com.search.engine.BotwSearchEngine.main(BotwSearchEngine.java:189)

请帮我解决这个问题。

【问题讨论】:

    标签: firefox selenium automation htmlunit webdriver


    【解决方案1】:

    该链接是否可能在页面的初始加载中不存在,并且随后使用 JavaScript 添加?如果是这样,您可能需要在创建 HTMLDriver 实例时检查是否启用了 JavaScript:WebDriver driver = new HTMLUnitDriver(true);

    http://code.google.com/p/selenium/wiki/HtmlUnitDriver

    【讨论】:

    • 不工作。 :( 得到这个异常。我认为页面/java脚本有问题。Exception in thread "main" ======= EXCEPTION START ======== EcmaError: lineNumber=[0] column=[0] lineSource=[function () {] name=[ReferenceError] sourceName=[onkeypress event for HtmlTextInput[<input name="mainheader1$Botwsitesearch2$q" type="text" id="mainheader1_Botwsitesearch2_q" class="form-search-input" style="width:193px;" onkeypress="if ((event.keyCode == 13)||(e.which == 13))
    • in http://botw.org/top/Business/] message=[ReferenceError: "e" is not defined.] com.gargoylesoftware.htmlunit.ScriptException: ReferenceError: "e" is not defined.
    猜你喜欢
    • 1970-01-01
    • 2016-09-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-20
    • 1970-01-01
    • 2016-03-21
    • 1970-01-01
    相关资源
    最近更新 更多