有人设法让Geb和Spock插件与Grails 2.2一起工作吗?
如果是,你使用的Geb、Selenium和Spock的确切版本是什么?
Grails Geb示例中有一个pull请求,更新到2.2
版本可以在"更改的文件"选项卡中找到:
def gebVersion = '0.9.0-RC-1'
def seleniumVersion = '2.27.0'
def spockVersion = '0.7'
我的配置适用于2.2.3
在grails app/Config/BuildConfig.groovy 中
def gebVersion = '0.9.0'
def seleniumVersion = '2.21.0'
def spockVersion = '0.7
dependencies {
test("org.seleniumhq.selenium:selenium-htmlunit-driver:$seleniumVersion") {
exclude "xml-apis"
}
test("org.seleniumhq.selenium:selenium-chrome-driver:$seleniumVersion")
test("org.seleniumhq.selenium:selenium-firefox-driver:$seleniumVersion")
test "org.spockframework:spock-grails-support:0.7-groovy-2.0"
test "org.gebish:geb-spock:$gebVersion"
}
plugins {
test ":spock:$spockVersion"
test ":geb:$gebVersion"
}
在测试/功能/GebConfig.groovy
/*
This is the Geb configuration file.
See: http://www.gebish.org/manual/current/configuration.html
*/
import org.openqa.selenium.htmlunit.HtmlUnitDriver
import org.openqa.selenium.firefox.FirefoxDriver
import org.openqa.selenium.chrome.ChromeDriver
// Use htmlunit as the default
// See: http://code.google.com/p/selenium/wiki/HtmlUnitDriver
driver = {
def driver = new HtmlUnitDriver()
driver.javascriptEnabled = true
driver
}
environments {
// run as “grails -Dgeb.env=chrome test-app”
// See: http://code.google.com/p/selenium/wiki/ChromeDriver
chrome {
driver = { new ChromeDriver() }
}
// run as “grails -Dgeb.env=firefox test-app”
// See: http://code.google.com/p/selenium/wiki/FirefoxDriver
firefox {
driver = { new FirefoxDriver() }
}
}