Модульное тестирование с использованием ControllerUnitTestCase в Grails - PullRequest
0 голосов
/ 23 августа 2011

У меня есть следующий контроллер:

class MyController {
   def simple = {
      render "simple"
   }
}

Соответственно следующий тестовый пример:

class MyControllerTests extends ControllerUnitTestCase {
   void testSimple() {
      controller.simple
      def body = controller.response.contentAsString
      assertEquals "simple", body
   }
}

Я ожидал бы, что этот тест пройдет успешно.Удивительно, но это приводит к следующему результату:

junit.framework.ComparisonFailure: null expected:<[simple]> but was:<[]>

Я запустил приложение через браузер и работает как положено (т. Е. Печатает "просто").

Чего мне здесь не хватает?

1 Ответ

3 голосов
/ 23 августа 2011

Привет, я думаю, твой тест должен выглядеть так:

   void testSimple() {
      controller.simple()
      def body = controller.response.contentAsString
      assertEquals "simple", body
   }

Вам нужно вызвать простое действие (замыкание).

Подробнее см .: http://www.gitshah.com/2010/04/unit-testing-grails-controller-part-1.html

Спасибо,

Джим.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...