При использовании сгенерированного теста интеграции (grails create-integration-test package.ServiceName) Я не могу использовать введенную службу в тесте - в плагине Grails ,Почему инъекция зависимостей в рамках теста интеграции не работает при разработке моего плагина grails
Он бросает очень бесполезный NullPointerException
Однако, тот же самый процесс - но не используется в приложении Grails (Grails создать-приложение) работает без проблем вообще.
Вы можете дублировать это следующим образом:
> grails create-plugin myServicePlugin
>grails test-app
// Передает как ожидалось
>grails create-service testing.DummyService
Alter \myServicePlugin\test\unit\testing\DummyServiceSpec.groovy
Смените
void "test something"() {
}
Для
void "test something"() {
expect:
def x = true
}
>grails test-app
// Передает
>grails create-integration-test testing.DummyService
Alter \myServicePlugin\test\integration\testing\DummyServiceSpec.groovy
Изменить
void "test something"() {
}
К
void "test something"() {
expect:
def x = true
}
>grails test-app integration:
// Пропускной путь
Все до сих пор. Теперь, чтобы изменить DummyService
сделать что-то errmm .. Манекен-иш
Alter \myServicePlugin\grails-app\services\testing\DummyService.groovy
Добавить
def dummySpit(){
return true
}
после def serviceMethod(){}
Теперь, чтобы ввести услугу в испытательную Spec
Alter \myServicePlugin\test\integration\testing\DummyServiceSpec.groovy
Добавить def dummyService
Ниже
class DummyServiceSpec extends Specification {
И изменить тело "test something"
метод для:
expect:
assert dummyService.dummySpit()
И это, где мир падает.
>grails test-app integration:
|Loading Grails 2.3.5
|Configuring classpath
.
|Environment set to test
...............
|Compiling 1 source files
........
|Running without daemon...
.......................................
|Compiling 1 source files
.
|Running 1 integration test...
|Running 1 integration test... 1 of 1
Failure: |
test something(testing.DummyServiceSpec)
|
java.lang.NullPointerException
at testing.DummyServiceSpec.test something(DummyServiceSpec.groovy:22)
|Completed 1 integration test, 1 failed in 0m 0s
.Tests FAILED
|
- view reports in G:\workspace\myServicePlugin\target\test-reports
Error |
Forked Grails VM exited with error
Я знаю, что это был мой первый SO сообщение .. но почему-вниз голосование по этому вопросу? Я могу понять голосующий ответ ... но вопрос? Что с этим не так? – stevecowling
Отредактированный вопрос, удаляя тривиальные вещи и подчеркивая суть проблемы. – dmahapatro
Что в строке 22 DummyServiceSpec? –