Selenium HtmlUnitDriver给出了" geb.navigator.EmptyNavigator'不存在"错误虽然Firefoxdriver工作正常

时间:2016-10-21 16:20:52

标签: selenium-webdriver spock geb selenium-firefoxdriver htmlunit-driver

我正在使用Geb / Spock和Selenium进行简单的GUI测试。

我的规格:

class MySpecSpec  extends LoggedInSpec {

def "My criteria here"() {
    given: "Starting at the unit search entry page"
    to MyHomePage

    when:
    def result = statusSelection("DEALER_STOCK")

    then: "The status selection should be set to dealer stock"
    result
}}

和我的页面对象:

class MyHomePage extends MyContextPage {

@Override
String getPageUrl() {
    return super.getPageUrl() + "/unt/overviewMenu.html"
}
//check if csv button exist
static at = { $('.buttons-csv').text() != '' }
static content = {
    statusSelection { value -> $("select[id=searchSelection] option[value='${value}']") }
    filterButton(to: UnitSearchHomePage) { $('a[id=searchMy]') }
    resetButton { $('a[id=resetStock]') }
    addUnitToStockButton { $('a[id=addUnitBtn]') }
}}

当我使用driver = {new HtmlUnitDriver(javascriptEnabled: true)}

运行MySpec时

我得到了

geb.error.RequiredPageContentNotPresent:所需的网页内容' model.unt.MyHomePage - > statusSelection(DEALER_STOCK):geb.navigator.EmptyNavigator'不存在

虽然使用firefox驱动程序工作正常。 driver = { new FirefoxDriver() }

以下是版本的pom.xml摘录:

  <gebVersion>1.0</gebVersion>
  <seleniumVersion>2.53.1</seleniumVersion>
  <seleniumHtmlUnitVersion>2.52.0</seleniumHtmlUnitVersion>
  <org.codehaus.groovy-all.version>2.4.3</org.codehaus.groovy-all.version>
  <org.codehaus.gmaven.version>1.5</org.codehaus.gmaven.version>

提前致谢。

0 个答案:

没有答案