【问题标题】:grails 2.3: tests not recognized by test-appgrails 2.3:test-app 无法识别的测试
【发布时间】:2013-09-15 00:06:41
【问题描述】:

我正在使用最近发布的 grails 2.3.0。不幸的是,test-app 无法识别测试。这是我为产生问题所做的工作。

首先,制作一个新应用并创建一个控制器:

$ 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

然后,我通过在自动生成的方法void "test something"() 中添加assert 1 == 2 来编辑文件FooControllerSpec.groovy。以下是我编辑后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 groovy grails-2.0


    【解决方案1】:

    Grails 2.3.0 默认附带 spock 测试框架。所以,测试应该是这样的:

    void "test something"() {
        expect:
          1 == 2
    }
    

    有关 spockframework 的详细信息,请访问docs

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-16
      • 2013-08-06
      • 1970-01-01
      • 2012-05-06
      • 1970-01-01
      相关资源
      最近更新 更多