application test : junit5 - 테스트 인스턴스

This commit is contained in:
haerong22
2021-02-25 19:38:49 +09:00
parent 88eaa68881
commit 82d5107d5e

View File

@@ -18,92 +18,110 @@ import java.time.Duration;
import static org.junit.jupiter.api.Assertions.*; import static org.junit.jupiter.api.Assertions.*;
@DisplayNameGeneration(DisplayNameGenerator.ReplaceUnderscores.class) @DisplayNameGeneration(DisplayNameGenerator.ReplaceUnderscores.class)
@TestInstance(TestInstance.Lifecycle.PER_CLASS)
class StudyTest { class StudyTest {
@DisplayName("ParameterizedTest test") int value = 0;
@ParameterizedTest
@CsvSource({"10, '자바'", "20, 스프링"}) @Test
void test_25(@AggregateWith(StudyAggregator.class) Study study) { @DisplayName("instance")
System.out.println(study); void test_27() {
System.out.println(this);
System.out.println("value: " + value++);
} }
static class StudyAggregator implements ArgumentsAggregator { @Test
@Override @DisplayName("instance")
public Object aggregateArguments(ArgumentsAccessor a, ParameterContext parameterContext) void test_26() {
throws ArgumentsAggregationException { System.out.println(this);
return new Study(a.getInteger(0), a.getString(1)); System.out.println("value: " + value++);
}
} }
@DisplayName("ParameterizedTest test")
@ParameterizedTest
@CsvSource({"10, '자바'", "20, 스프링"})
void test_24(ArgumentsAccessor a) {
Study study = new Study(a.getInteger(0), a.getString(1));
System.out.println(study);
}
@DisplayName("ParameterizedTest test") // @DisplayName("ParameterizedTest test")
@ParameterizedTest // @ParameterizedTest
@CsvSource({"10, '자바'", "20, 스프링"}) // @CsvSource({"10, '자바'", "20, 스프링"})
void test_23(Integer limit, String name) { // void test_25(@AggregateWith(StudyAggregator.class) Study study) {
Study study = new Study(limit, name); // System.out.println(study);
System.out.println(study); // }
} //
// static class StudyAggregator implements ArgumentsAggregator {
// @Override
// public Object aggregateArguments(ArgumentsAccessor a, ParameterContext parameterContext)
// throws ArgumentsAggregationException {
// return new Study(a.getInteger(0), a.getString(1));
// }
// }
@DisplayName("ParameterizedTest test") // @DisplayName("ParameterizedTest test")
@ParameterizedTest(name = "{index} {displayName} message={0}") // @ParameterizedTest
@ValueSource(ints = {10, 20, 30}) // @CsvSource({"10, '자바'", "20, 스프링"})
void test_22(@ConvertWith(StudyConverter.class) Study study) { // void test_24(ArgumentsAccessor a) {
System.out.println(study.getLimit()); // Study study = new Study(a.getInteger(0), a.getString(1));
} // System.out.println(study);
// }
static class StudyConverter extends SimpleArgumentConverter { //
@Override // @DisplayName("ParameterizedTest test")
protected Object convert(Object source, Class<?> targetType) throws ArgumentConversionException { // @ParameterizedTest
assertEquals(Study.class, targetType, "Can only convert to Study"); // @CsvSource({"10, '자바'", "20, 스프링"})
return new Study(Integer.parseInt(source.toString())); // void test_23(Integer limit, String name) {
} // Study study = new Study(limit, name);
} // System.out.println(study);
// }
@DisplayName("ParameterizedTest test") //
@ParameterizedTest(name = "{index} {displayName} message={0}") // @DisplayName("ParameterizedTest test")
@ValueSource(strings = {"반복", "테스트", "데이터"}) // @ParameterizedTest(name = "{index} {displayName} message={0}")
@NullAndEmptySource // @ValueSource(ints = {10, 20, 30})
void test_21(String message) { // void test_22(@ConvertWith(StudyConverter.class) Study study) {
System.out.println("message : " + message); // System.out.println(study.getLimit());
} // }
//
@DisplayName("ParameterizedTest test") // static class StudyConverter extends SimpleArgumentConverter {
@ParameterizedTest(name = "{index} {displayName} message={0}") // @Override
@ValueSource(strings = {"반복", "테스트", "데이터"}) // protected Object convert(Object source, Class<?> targetType) throws ArgumentConversionException {
void test_20(String message) { // assertEquals(Study.class, targetType, "Can only convert to Study");
System.out.println(message); // return new Study(Integer.parseInt(source.toString()));
} // }
// }
@RepeatedTest(value = 5, name = "{displayName}, {currentRepetition}/{totalRepetitions}") //
@DisplayName("repeated test") // @DisplayName("ParameterizedTest test")
void test_19(RepetitionInfo repetitionInfo) { // @ParameterizedTest(name = "{index} {displayName} message={0}")
// @ValueSource(strings = {"반복", "테스트", "데이터"})
System.out.println( // @NullAndEmptySource
"test" + repetitionInfo.getCurrentRepetition() + // void test_21(String message) {
"/" + repetitionInfo.getTotalRepetitions()); // System.out.println("message : " + message);
} // }
//
@RepeatedTest(5) // @DisplayName("ParameterizedTest test")
@DisplayName("repeated test") // @ParameterizedTest(name = "{index} {displayName} message={0}")
void test_18(RepetitionInfo repetitionInfo) { // @ValueSource(strings = {"반복", "테스트", "데이터"})
// void test_20(String message) {
System.out.println( // System.out.println(message);
"test" + repetitionInfo.getCurrentRepetition() + // }
"/" + repetitionInfo.getTotalRepetitions()); //
} // @RepeatedTest(value = 5, name = "{displayName}, {currentRepetition}/{totalRepetitions}")
// @DisplayName("repeated test")
@RepeatedTest(5) // void test_19(RepetitionInfo repetitionInfo) {
@DisplayName("repeated test") //
void test_17() { // System.out.println(
System.out.println("test"); // "test" + repetitionInfo.getCurrentRepetition() +
} // "/" + repetitionInfo.getTotalRepetitions());
// }
//
// @RepeatedTest(5)
// @DisplayName("repeated test")
// void test_18(RepetitionInfo repetitionInfo) {
//
// System.out.println(
// "test" + repetitionInfo.getCurrentRepetition() +
// "/" + repetitionInfo.getTotalRepetitions());
// }
//
// @RepeatedTest(5)
// @DisplayName("repeated test")
// void test_17() {
// System.out.println("test");
// }
// @FastTest // @FastTest