我正在使用最近发布的 grails 2.3.0。不幸的是,测试应用程序无法识别测试。这是我为产生问题所做的事情。
首先,创建一个新应用程序并创建一个控制器:
$ grails create-app firstApp
$ cd firstApp/
$ grails create-controller foo
我通过创建控制器 foo 获得了以下文件:
| Created file grails-app/controllers/firstapp/FooController.groovy
| Created file grails-app/views/foo
| Created file test/unit/firstapp/FooControllerSpec.groovy
然后,我编辑了该文件FooControllerSpec.groovy
通过增加assert 1 == 2
在自动生成的方法中void "test something"()
。这是完整内容FooControllerSpec.groovy
经过我的编辑:
package firstapp
import grails.test.mixin.TestFor
import spock.lang.Specification
/**
* See the API for {@link grails.test.mixin.web.ControllerUnitTestMixin} for usage instructions
*/
@TestFor(FooController)
class FooControllerSpec extends Specification {
def setup() {
}
def cleanup() {
}
void "test something"() {
assert 1 == 2
}
}
然后我运行了以下命令:
$ grails test-app
但是,没有进行任何测试。这是该命令的输出:
| Completed 0 unit test, 0 failed in 0m 0s
| Tests PASSED - view reports in /Users/jianbao.tao/projects/grails/firstApp/target/test-reports
我的平台是 OS X 10.8.5 + grails 2.3.0 + Java 1.6.0_51 + groovy 2.1.6。谁能告诉我这里发生了什么事吗?先感谢您。
Grails 2.3.0 默认附带 spock 测试框架。因此,测试应该如下所示:
void "test something"() {
expect:
1 == 2
}
有关 spockframework 的详细信息,请访问docs http://docs.spockframework.org/en/latest/.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)