Grails Unit Test исключение java.яз..Исключение: не найдено ни одного теста, соответствующего тесту grails target pattern filter


Я только начинаю изучать тестирование Граалей, и я пытался написать свой первый тест на граали.Для этого я создал новый проект grails и создал контроллер с именем com.rahulserver.SomeController:

package com.rahulserver

class SomeController {

    def index() { }
    def someAction(){

    }
}

Когда я создавал этот контроллер, grails автоматически создавал com.rahulserver.Папка SomeControllerSpec under test/unit. Вот мой SomeControllerSpec.заводной:

package com.rahulserver

import grails.test.mixin.TestFor
import spock.lang.Specification

/**
 * See the API for {@link grails.test.mixin.web.ControllerUnitTestMixin} for usage instructions
 */
@TestFor(SomeController)
class SomeControllerSpec extends Specification {

    def setup() {
    }

    def cleanup() {
    }

    void testSomeAction() {
        assert 1==1
    }
}

Когда я щелкаю Правой Кнопкой Мыши этот класс и запускаю этот тест, я получаю следующее:

Testing started at 5:21 PM ...
|Loading Grails 2.4.3
|Configuring classpath
.
|Environment set to test
....................................
|Running without daemon...
..........................................
|Compiling 1 source files
.
|Running 1 unit test...|Running 1 unit test... 1 of 1
--Output from initializationError--
Failure:  |
initializationError(org.junit.runner.manipulation.Filter)
 |
java.lang.Exception: No tests found matching grails test target pattern filter from org.junit.runner.Request$1@1f0f9da5
    at org.junit.internal.requests.FilterRequest.getRunner(FilterRequest.java:35)
    at org.junit.runner.JUnitCore.run(JUnitCore.java:138)
No tests found matching grails test target pattern filter from org.junit.runner.Request$1@1f0f9da5
java.lang.Exception: No tests found matching grails test target pattern filter from org.junit.runner.Request$1@1f0f9da5
    at org.junit.internal.requests.FilterRequest.getRunner(FilterRequest.java:35)
    at org.junit.runner.JUnitCore.run(JUnitCore.java:138)

|Completed 1 unit test, 1 failed in 0m 0s
.Tests FAILED 
|
 - view reports in D:115Labsgrailsunittestdemotargettest-reports
Error |
Forked Grails VM exited with error

Process finished with exit code 1

Так почему же это не?

EDIT

Я использую grails 2.4.3

1 7

1 ответ:

Модульные тесты определяются с помощью Spock по умолчанию:

void testSomeAction() {
    assert 1==1
}

Следует записать как:

void "Test some action"() {
    expect:
      1==1
}

См. http://spockframework.github.io/spock/docs/1.0/index.html