JUnit 4.12とjunit-vintage-engine(JUnit 5から)をSpring Framework 4.3.xと一緒に使用できるというのは正しいですか? junit-jupiter-apiとjunit-jupiter-engine(両方ともJUnit 5から)も使用する可能性はありますか?
私はあなたが次のようなSpring統合テストを意味すると思います:
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
@RunWith(SpringRunner.class)
@SpringBootTest(classes = Application.class)
public class ExampleIT {
@Test
public void test() {
}
}
これは、ビンテージエンジンで実行できます。
Spring 5のプロトタイプ を使用して、Spring4.3でJUnit5を使用することもできます。 JarsはJitpackで利用できるため、このテストをJUnit 5に変換するには、JupiterAPIとプロトタイプを依存関係に追加するだけです。 Maven用
<dependency>
<groupId>com.github.sbrannen</groupId>
<artifactId>spring-test-junit5</artifactId>
<version>1.0.0.M3</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<version>5.0.0-M3</version>
<scope>test</scope>
</dependency>
...
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
また、SpringRunnerの代わりにSpringExtensionとJUnit jupiterAPIを使用します。
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit.jupiter.SpringExtension;
@ExtendWith(SpringExtension.class)
@SpringBootTest(classes = Application.class)
public class ExampleIT {
@Test
public void test() {
}
}
お役に立てれば