Комментарии 13
никогда нельзя быть уверенным, в какой очередности пройдут тестыУ вас проект антом собирается?
0
Да, антом.
0
Понятно. С мавеном такой проблемы нет.
0
Мне казалось, что это проблема на уровне jUnit. Сборщику мы просто говорим выполнить класс.
0
С антом, к счастью, не часто приходилось работать, поэтому не могу ничего сказать. В мавене выполнением тестов занимается отдельный плагин. Если я правильно помню, тесты в классе он выполняет в алфавитном порядке. В 7-й версии TeamCity, кстати, появилась возможность фейлить билд если определенный текст встречается в билд логе — вам могло бы быть полезно =)
0
Дык в этом-то и проблема — в TeamCity есть бага (или недоделка) из-за которой он не воспринимает сервисные команды из билд лога тестов. В начале поста есть ссылка на багтрекер JetBrains`а. А что касается порядка тестов, то мне кажется иногда бывает очень полезно сделать порядок тестов на свое усмотрение.
0
Мне всегда казалось, что результат выполнение одного unit теста ни в коем случае не должен зависеть от результата выполнения предыдущего. Я ошибаюсь?
0
Если Вы имеете ввиду относительно этой модели, то здесь оно и не зависит. Класс тестов может содержать общие поля. Такие, как url приложения, логин / пароль и т.п. Если же в ходе тестового метода меняются какие-то общие поля тестового класса, то можно добавить что-то типа:
Хотя это конечно будет не правильно. ИМХО каждый тестовый метод должен работать только в самом себе и не менять ничего общего.
@Before
public void clear()
{
//Очищаем общие поля
}
Хотя это конечно будет не правильно. ИМХО каждый тестовый метод должен работать только в самом себе и не менять ничего общего.
0
Я на самом по поводу этого:
Пройдут они в другой последовательности – результат от этого не должен поменяться.
Например, никогда нельзя быть уверенным, в какой очередности пройдут тесты.
Пройдут они в другой последовательности – результат от этого не должен поменяться.
0
В JUnit действительно отсутствует поддержка зависимостей между тестами или упорядоченное исполнение тестов.
Все это реализовано в другом фреймворке: TestNG. Чтобы не заниматься поддержкой собственных «велосипедов» вам стоит взглянуть на него.
Что касается TeamCity, то в его задачи не входит поддержка порядка исполнения тестов. Зато входит необходимость как можно раньше сообщить об упавших/исправленных тестах. Для этого имеет смысл выполнить падавшие недавно тесты как можно раньше, т.е., изменить порядок исполнения.
Все это реализовано в другом фреймворке: TestNG. Чтобы не заниматься поддержкой собственных «велосипедов» вам стоит взглянуть на него.
Что касается TeamCity, то в его задачи не входит поддержка порядка исполнения тестов. Зато входит необходимость как можно раньше сообщить об упавших/исправленных тестах. Для этого имеет смысл выполнить падавшие недавно тесты как можно раньше, т.е., изменить порядок исполнения.
0
Посмотрите на этот вопрос:
stackoverflow.com/questions/2584629/how-can-i-specifiy-junit-test-dependencies
Там рассматривается тоже самое, но более элегантным способом
stackoverflow.com/questions/2584629/how-can-i-specifiy-junit-test-dependencies
Там рассматривается тоже самое, но более элегантным способом
0
Зарегистрируйтесь на Хабре , чтобы оставить комментарий
Кастомная обработка jUnit тестов в TeamCity