我正在尝试使用Geb + Spock进行Web自动化测试,但它一直告诉我:
Caught: java.lang.NoClassDefFoundError: spock/lang/Specification
Caused by: java.lang.ClassNotFoundException: spock.lang.Specification
我想我已经添加了spock可能需要的东西......?
@Grapes([
@Grab('org.gebish:geb-core:1.1.1'),
@Grab('org.seleniumhq.selenium:selenium-chrome-driver:2.42.0'),
@Grab('org.seleniumhq.selenium:selenium-support:2.42.0'),
@Grab('org.gebish:geb-spock:1.1.1')
])
import geb.spock.GebSpec
import spock.lang.*
class GoogleSpec extends GebSpec{
def "Google search"() {
given:
to GooglePage
when:
searchBox.value == "Dogs"
and:
searchButton.click()
then:
at ResultPage
}
}
答案 0 :(得分:0)
好吧,也许您还想将依赖项添加到
org.spockframework:spock-core:1.0-groovy-2.4
cglib:cglib-nodep:3.2.4
org.objenesis:objenesis:2.2
我对Gradle一无所知,但我在Maven中使用的那些。
P.S。:也许下次您想使用自己喜欢的网络搜索引擎首先查找示例项目或文档。你应该找到很多。
答案 1 :(得分:0)
是的 - 你需要spock-core而不是spock-parent或其他任何东西。
org.spockframework:spock-core:1.1-groovy-2.4-rc-3