Тестирование приложений EJB 3.1 со встроенными контейнерами
Можно ли назвать тестирование фасоли или метода фасоли (или модуля) после его развертывания на встроенном контейнере "модульным тестированием". ИМО, я чувствую, что это возможно, потому что,
-
Мы по-прежнему будем тестировать только один блок, может быть один EJB или его метод, который не зависит от любого другого кода приложения от любого другого разработчика. Но, конечно, он берет услуги из встроенных контейнеров.
- ИМХО, мы можем считать эти встроенные контейнеры всего лишь несколькими банками это предоставляет некоторую услугу точно так же, как JRE предоставляет обычное приложение java SE. Итак, если мы рассматриваем тестирование класса Java SE или метода в JRE как модульное тестирование, то я думаю, что мы можем назвать описанный выше сценарий также модульным тестированием.
Я согласен, что есть довольно много вопросов, которые можно обсудить на эту тему, и я также согласен, что то, что я упомянул выше, может быть неправильным. Поэтому я хотел бы услышать от вас всех, правильно ли то, что я думаю, или я упускаю какой-то момент. Насколько я вижу, нет никакого одиночное и твердое определение для модульного тестирования. Если они есть, пожалуйста, дайте мне несколько советов, и это будет очень полезно для меня.
Большое спасибо за Вашу поддержку. - Ганеша...
1 ответ:
Я думаю, что ответ полностью зависит от того, что вы делаете в своих тестах.
Согласно определению модульного тестирования, (it) - это метод, с помощью которого отдельные единицы исходного кода тестируются, чтобы определить, подходят ли они для использования. Единица измерения - это наименьшая тестируемая часть приложения . Если вам нужен встроенный контейнер для тестирования этой самой маленькой единицы кода, то да, это модульное тестирование.
Примером для меня было бы использование гиперзвуковой БД для тестирования DAO. Это не можно тестировать запросы JPA без БД в памяти (насколько я знаю), и они являются наименьшей частью кода метода DAO.
Однако, если вы используете встроенный контейнер для тестирования метода EJB, и он сотрудничает с другими внедренными EJBs или POJOs (например, через CDI), я бы рассмотрел это интеграционное тестирование. Теперь вы тестируете не самый маленький бит кода, но и что-то еще (другие сотрудничающие EJBs или POJOs) , и вам нужно будет издеваться над соавторами, чтобы по-настоящему протестируйте самый маленький кусочек кода EJB.