Maven / JUnit - используйте в Maven более старую технику Junit со статическим пакетом для работы - PullRequest
0 голосов
/ 17 ноября 2010

Я переключаю проект с Ant на Maven. У меня есть свои модульные тесты в правильном месте, но по какой-либо причине плагин maven surefire видит только около 136 (из 1136 всего) тестов.

При использовании Ant мы использовали более старую технику тестирования:

public class GatherTests{
  public static Test suite(){
    ... add tests ...
    return testSuite;
  }
}

как наш бегун. Я не смог определить, как заставить это работать, используя Surefire. Я использую junit 3.8.1 с Maven 2.0. Кто-нибудь знает возможно ли это? Я попробовал одну вещь:

-Dtest=GatherTests

без удачи. Многие из наших тестов существуют в классах, которые не наследуются сразу от junit.framework.TestCase, поэтому может быть причиной того, что верный сбой не дает их собрать. Я пойду через журналы сейчас, чтобы увидеть, чего не хватает.

Спасибо Тим

1 Ответ

0 голосов
/ 17 ноября 2010

Конечно, я понял это вскоре после публикации.

Страница плагина Maven Surefire

Там написано:

По умолчанию плагин Surefire автоматически включает все тестовые классы сследующие шаблоны:

  • "* / Test .java" - включает все его подкаталоги и все имена файлов Java, которые начинаются с "Test".
  • "** / * Test.java "- включает в себя все его подкаталоги и все имена файлов java, оканчивающиеся на" Test ".
  • " ** / * TestCase.java "- включает все его подкаталоги и все имена файлов javaэто заканчивается "TestCase".

Тесты, которые не выполнялись, соответствовали шаблону ** / * Tests.java.Я добавил правило включения, и теперь все они работают.

...