selenium - 如何使用 firefox 驱动程序运行 GEB 测试?

标签 selenium grails testing groovy geb

首先,我在哪里下载 firefox 驱动程序? 如何设置 Geb 以在 Grails 应用程序中使用此驱动程序运行测试。

我正在使用 Grails 2.3.7,到目前为止,我有这个:

在我的 GebConfig.groovy 中:

// Testing frameworks
def gebVersion = "0.9.2"
def seleniumVersion = "2.32.0"

dependencies {
    test "org.seleniumhq.selenium:selenium-chrome-driver:$seleniumVersion"
   // test "org.seleniumhq.selenium:selenium-firefox-driver:$seleniumVersion"
    test "org.gebish:geb-spock:$gebVersion"
    test "org.gebish:geb-junit4:$gebVersion"
    test "org.seleniumhq.selenium:selenium-support:2.31.0"

    test "org.seleniumhq.selenium:selenium-firefox-driver:2.31.0"
}

在 GebConfig.groovy 中:

import org.openqa.selenium.firefox.FirefoxDriver
import org.openqa.selenium.chrome.ChromeDriver
import org.openqa.selenium.Dimension

driver = { new FirefoxDriver() }

environments {
    // run as “grails -Dgeb.env=firefox test-app”
    // See: http://code.google.com/p/selenium/wiki/FirefoxDriver
    firefox {
        driver = { new FirefoxDriver() }
    }
}

这是我得到的错误: enter image description here

最佳答案

尝试将驱动程序升级到更新的版本。 2.52.0 是目前最新的版本,因此自该驱动程序构建以来,Firefox 浏览器可能已经更新了很多次。

即,更改为

test "org.seleniumhq.selenium:selenium-support:2.52.0"

test "org.seleniumhq.selenium:selenium-firefox-driver:2.52.0"

你应该更新 gebVersion 到 0.13.0 和 seleniumVersion 到 2.52.0

驱动程序会自动从 maven 存储库下载,并确保 GebConfig.groovy 文件位于类路径中——我通常将其放在全局文件夹中。请参阅此 repo 中的示例:https://github.com/JacobAae/dm844-sample-project/

关于selenium - 如何使用 firefox 驱动程序运行 GEB 测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35877720/

相关文章:

java - Salesforce中文版无法点击中文链接文本

java - 查找被忽略的 junits 的程序

java - 如何让 TestNG-@Factory 以特定顺序实例化测试类?

python - headless Chrome 驱动程序不适用于 Selenium

grails - 创建自定义验证器

grails - grails 域类中何时以及为什么应该为空或/和空白约束?

修改 Controller 后,Grails 找不到插件提供的 View

java - 模拟类方法的 NullPointerException

java - Spring Boot : Preload Data and configure H2 for tests. 特殊配置问题

java - 如何使用 Selenium Webdriver 从以下 div 获取文本