Это потому, что вы запускаете его как тест JUnit 3, а не тест JUnit 4. Вы можете сказать это, потому что классы junit.framework. * - это JUnit 3, а классы org.junit. * - это JUnit 4. Ваше сообщение об ошибке:
junit.framework.AssertionFailedError: No tests found in com.example.suite.ServiceTestSuite
Если вы запускаете тесты с помощью бегуна JUnit 3, он будет искать метод с именем suite()
в вашем TestSuite, он не будет использовать аннотации. Вам необходимо запустить его с помощью JUnit 4, например org.junit.runner.JUnitCore
или аналогичного.
Как это исправить, зависит от того, как вы вызываете это в Jenkins. Если вы используете ant, используйте версию более позднюю, чем 1.7, и она должна работать.
Если вы используете maven, используйте версию библиотеки JUnit> 4, попробуйте 4.11. Если это по-прежнему не работает по какой-либо причине, вы можете заставить провайдера перейти на junit 4, добавив следующее в ваш pom:
<plugins>
[...]
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.11</version>
<dependencies>
<dependency>
<groupId>org.apache.maven.surefire</groupId>
<artifactId>surefire-junit47</artifactId>
<version>2.11</version>
</dependency>
</dependencies>
</plugin>
[...]
</plugins>
Это от: Surefire: Использование JUnit .