Spring, Eclipse, запуск тестов Junit (или другого типа) в приложении live spring? - PullRequest
0 голосов
/ 25 апреля 2011

Я не совсем уверен, что я упустил что-то действительно очевидное здесь, но мои поиски по этой теме не возвращают мне результаты использования. Я недавно получил больше в модульном тестировании и использовании фиктивных объектов. Это хорошо для тестирования объектов изолированно, но в сложном приложении Spring MVC, которое взаимодействует через AJAX с большим количеством кода Javascript, я иногда сталкиваюсь с такими проблемами, как передаваемое значение, которое не должно быть и заставляет что-то сломаться. Конечно, он по-прежнему соответствует типу, такому как String, но он может быть нулевым, что может привести к поломке строки.

Я подумал, что если бы я мог сделать что-то вроде ниже в реальном классе моего приложения (не в изолированном модульном тесте), то это могло бы быть полезно. Вроде как режим отладки, но вместо этого оно запускает приложение в качестве модульного теста, я буду запускать его регулярно и иметь возможность взаимодействовать с ним (ручное тестирование), и, если возникает ошибка, которая нарушает один из тестов, которые я там поместил, он будет скажи мне. Я понимаю, что могу сделать это с System.out.println, но я склонен использовать это слишком часто, может быть, иногда, так что может быть трудно просеять все выходы, чтобы выбрать такие вещи, так что было бы лучше, я думаю, если бы когда что-то происходило, вызывалось обычное диалоговое окно Junit GUI.

String somestring
if (somestring != null) {
boolean checkSomestring = true;
}
else {
boolean checkSomestring = false
}
assertEquals(checkSomestring, true);

Возможно, я немного побродил, полагаю, что есть способ сделать это, но сейчас он ускользает от меня, был бы признателен за любой совет. Спасибо

1 Ответ

0 голосов
/ 25 апреля 2011

У нас есть небольшая функция ASSERT (bool shouldBeTrue, string failMessage) в нашем javascript.Когда это терпит неудачу, это передает запрос регистратора ... только запрос GET с закодированными URL-адресами аргументы: dateTime, machineName, currentCocument и faultMessage.Веб-сервер просто записывает его в лог-файл.Затем «хвостовое задание» (скрипт korn-shell, основанный на «tail -f») периодически (каждую минуту, из памяти) собирает строки сообщений и отправляет их по электронной почте группе разработчиков для системы.Один и тот же набор используется в нескольких системах.

Не спрашивайте меня о деталях;Я "гуру юникса" ... и самозабвенный кролик, когда дело доходит до JavaScript.Парень, который написал это все еще вокруг, хотя;так что я могу (на следующей неделе) спросить его, не возражает ли он против публикации в сети.

Я думаю, что все это довольно аккуратно.Большую часть времени мы просто игнорируем assert-mails (у меня есть правило outlook, которое отправляет их прямо в удаленное ведро);кроме случаев, когда мы что-то тестируем ... Таким образом, мы используем модульное тестирование GUI друг друга для обнаружения "поломок" в материалах, которые мы написали.Я также присматриваю за ними в течение пары дней после каждого выпуска.

Кстати: однажды мы попробовали автоматизированное тестирование веб-приложений.Мы потратили на это небольшое состояние, пока не выяснили, что использовали наше хорошее программное обеспечение для тестирования наших дрянных тестовых сценариев ... и мы в основном разочаровались.Но это было много лет назад, и я считаю, что ситуация в этой области значительно улучшилась, поэтому, возможно, стоит взглянуть по-другому;По крайней мере, для "критической" функциональности системы.

Приветствия.Кит.

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