我试图将Gebish整合到Gradle中。 我已经找到了这个很好的教程:http://www.gebish.org/manual/0.9.2/build-integrations.html#gradle
我发现需要使用命令行指定浏览器。 现在我有了这段代码:
def gebVersion = '0.13.1'
def seleniumVersion = '2.51.0'
apply plugin: 'groovy'
repositories {
mavenCentral()
}
dependencies {
testCompile "org.gebish:geb-spock:$gebVersion"
testCompile("org.spockframework:spock-core:1.0-groovy-2.4")
testRuntime "org.seleniumhq.selenium:selenium-support:$seleniumVersion"
/*
// Drivers
testCompile "org.seleniumhq.selenium:selenium-chrome-driver:$seleniumVersion"
testCompile "org.seleniumhq.selenium:selenium-firefox-driver:$seleniumVersion"
*/
}
task firefoxTest(type: Test) {
dependencies {
testCompile "org.seleniumhq.selenium:selenium-firefox-driver:$seleniumVersion"
}
}
task chromeTest(type: Test) {
dependencies {
testCompile "org.seleniumhq.selenium:selenium-chrome-driver:$seleniumVersion"
}
}
test {
systemProperties "geb.build.reportsDir": "$reportsDir/geb"
}
我也有这个大测试,位于src / test / groovy / test.groovy
import geb.Browser
Browser.drive {
go "http://stackoverflow.com"
}
问题是,如果我使用gradlew firefoxTest
或gradlew chromeTest
运行gradle,它什么都不会发生,我收到以下消息:
14:02:03: Executing external task 'chromeTest'...
:compileJava UP-TO-DATE
:compileGroovy UP-TO-DATE
:processResources UP-TO-DATE
:classes UP-TO-DATE
:compileTestJava UP-TO-DATE
:compileTestGroovy
:processTestResources UP-TO-DATE
:testClasses
:chromeTest
BUILD SUCCESSFUL
Total time: 2.534 secs
14:02:05: External task execution finished 'chromeTest'.
如何使用特定浏览器通过命令行运行测试? 还可以构建Browserstack支持吗?
答案 0 :(得分:1)
看起来你正确设置了Gradle。但是,您的大测试需要扩展geb.spock.GebReportingSpec
或geb.junit4.GebReportingTest
,以便测试运行员将其检测为测试。然后它必须包含符合Spec或Test要求的测试。例如,请参阅Geb Gradle示例项目中的GebishOrgSpec.groovy和GebishOrgTest.groovy。
答案 1 :(得分:0)
关于使用多个浏览器运行测试,请查看build file of the Geb's example project that uses gradle。即Geb environment设置here的方式,然后GebConfig.groovy
使用here和here。