Si le test automatisé implique une base de données, etc., son exécution prendra beaucoup de temps. Divisons-le en un test unitaire et un test d'intégration afin que vous puissiez facilement exécuter le test unitaire. Il semble que la précision du test s'améliorera si vous pouvez tester à chaque fois dans l'état combiné, mais si cela prend du temps et que vous ne testez pas, ce sera écrasant.
Si vous utilisez Gradle, l'article https://www.petrikainulainen.net/programming/gradle/getting-started-with-gradle-integration-testing/ était bon, alors notez simplement la conclusion.
sourceSets {
integrationTest {
java {
compileClasspath += main.output + test.output
runtimeClasspath += main.output + test.output
srcDir file('src/integration-test/java')
}
resources.srcDir file('src/integration-test/resources')
}
}
configurations {
integrationTestCompile.extendsFrom testCompile
integrationTestRuntime.extendsFrom testRuntime
}
task integrationTest(type: Test) {
testClassesDir = sourceSets.integrationTest.output.classesDir
classpath = sourceSets.integrationTest.runtimeClasspath
outputs.upToDateWhen { false }
}
Écrivez-le comme un test unitaire, placez-le dans src / integration-test / java
, et exécutez-le avec gradle integrationTest
. La bibliothèque utilisée uniquement par integrationTest est spécifiée dans dependencies
avec ʻintegrationTestCompile`.
Recommended Posts