Я работаю с устаревшим проектом, который имеет:
- Чистые модульные тесты
- Интеграционные тесты (медленно запускаются, имеют все виды неприятных зависимостей)
Я ищу самый простой способ запустить оба типа тестов отдельно с Ant.
Интересно, есть ли способ, чтобы Ant автоматически распознавал эти две категории на основе иерархии наследования:
StringUtilsTest extends TestCase // "pure unit test"
против
ProductionDBTest extends AbstractTransactionalTesterBase // "integration test"
Существует иерархия абстрактныхсуперклассы, на которых основаны интеграционные тесты, но все они сводятся к некоторым классам тестов Spring и, в конечном итоге, AbstractSpringContextTests
, который расширяет junit.framework.TestCase
.
Другими словами, могу ли я различить в Ant тесты, которые (косвенно) расширить AbstractSpringContextTests
и тесты, которые непосредственно расширяют TestCase
?Или мне придется вручную пройти тесты и, например, поместить их в отдельные категории или TestSuites?(Есть много тестов, поэтому я бы не хотел этого делать.)
Разрешение : я попробовал подход Шона (очень многообещающий) , но не может заставить его работать (легко).В конце концов, я в конце концов прошел тесты полу-вручную, аннотировал чистые тесты (это была меньшая группа) с использованием установки, описанной в этого SO вопроса , и выполнял их сМуравей вот так .(Обратите внимание, что написание пользовательского TestRunner не необходимо.)