我正在尝试使用Spock运行geb测试。我已经在groovy脚本中编写了所有内容,该脚本位于/src/main/groovy
中,如下所示
import spock.lang.Specification
import geb.Browser
import org.openqa.selenium.firefox.FirefoxDriver
class AccessCookieInFF{
...
}
class BrowserSpec extends Specification {
def CookieTest(){
given: ...
when: ...
then: ...
}
}
def newTest= new BrowserSpec()
newTest.CookieTest()
Exception in thread "main" groovy.lang.MissingMethodException: No signature of m
ethod: BrowserSpec.CookieTest() is applicable for argument types: () values: []
通过将groovy测试文件放置在/src/test/groovy
中,并按照下面的链接对build.gradle
文件进行一些更改,然后通过命令gradle test
运行该文件,从而实现了这一点。测试文件现在如下所示(出于其他原因,我删除了类AccessCookieInff
)
import spock.lang.Specification
import geb.Browser
import org.openqa.selenium.firefox.FirefoxDriver
class BrowserSpec extends Specification {
def cookieTest(){
given: ...
when: ...
then: ...
}
}
这很有帮助。谢谢
我最近才开始为我们的web应用程序创建Geb/Spock测试,并且--考虑到我对Geb、Spock和所有Groovy的知识有限--遇到了一个毫无意义的错误(考虑到我的Java经验)。 因此,下面是有问题的模块: 那里没什么特别的。 以下是这一页(不过,我不确定这是如何结合在一起的): 根据Erdi的回答,BugSpec的超类也包括在内:
我在理解GEB/Spock测试中的一个问题时遇到了一些困难。我们正在使用gradle,并试图并行运行我们的测试。据我所知,gradle中的maxParallelForks属性将在单独的JVM中运行测试类。 我遇到的问题是,当我有6个测试类并将maxParallelForks设置为4个时,当测试开始时,我将得到4个测试类并行运行。太棒了!但最后两个班才是问题所在。假设在前4节课中,2节课在1分钟内完
我试过下面的东西,但不起作用。 我可以使用gradle maxParallelForks属性在类(spec)级别执行测试,但我希望在测试级别并行运行。
我尝试使用Grails 1.3.7、Geb、Spock和Selenium运行功能测试。下面是我的buildconfig.groovy文件: 测试代码如下所示:
我配置了一些测试,根据web应用程序中的登录尝试检查不同的消息。因为消息和输入字段将在第三次登录尝试时更改。 登录是基于向特定电话号码发送密码的两步登录,因此在第一页LoginPage中,用户介绍他们的Id和电话号码,然后将其重定向到第二页ValidationLoginPage,用户在其中介绍接收到的密码。 我想检查一下,在第二个页面中,用户只能引入三个错误的密码,在第四次尝试时,引入密码的输入将
我似乎无法从命令提示符运行功能测试。有趣的是,它与Intellij的工作很好... 更新: 我将grails更新到2.2.3,geb更新到0.9.2,现在命令提示符中的完整堆栈跟踪如下所示(在Intellij中仍然很好):