깃허브에 Repository 생성
git remote rm origin
git remote add origin '새로운 경로'
git remote -v
git push origin main
https://www.egovframe.go.kr/home/sub.do?menuNo=13
mvnrepository
Spring TestContext Framework » 5.2.24.RELEASE
JUnit » 4.13.2
AssertJ Core » 3.24.2
pom.xml에 dependency 추가
<!-- https://mvnrepository.com/artifact/org.assertj/assertj-core -->
<dependency>
<groupId>org.assertj</groupId>
<artifactId>assertj-core</artifactId>
<version>3.24.2</version>
<scope>test</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/junit/junit -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.13.2</version>
<scope>test</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-test -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>5.2.24.RELEASE</version>
<scope>test</scope>
</dependency>
src/test/java 경로에 원래의 패키지명을 동일하게 작성한 후 테스트를 진행 한다.
테스트 클래스 작성
실행은 Run As -> JUnit Test로 실행하면 된다.
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = "file:src/main/webapp/WEB-INF/spring/**/*.xml")
@WebAppConfiguration
public class ReservationServiceTest {
@Autowired
ReservationService reservationService;
@Before
public void before() {
System.out.println("before");
}
@After
public void after() {
System.out.println("after");
}
@BeforeClass
public static void beforeClass() {
System.out.println("beforeClass");
}
@AfterClass
public static void afterClass() {
System.out.println("afterClass");
}
//@Test
public void saveTest() {
//무슨 값이 기본 세팅으로 주어지는가
ReservationDto reservationDto = new ReservationDto();
reservationDto.setRoomNumber("B201");
reservationDto.setCustomerNumber("1101");
assertThat(reservationDto).isNotNull();
assertThat(reservationDto.getRoomNumber()).isEqualTo("B201");
//어떤 기능을 수행할 것인가
int result = reservationService.createReservation(reservationDto);
//그로인해 결과값이 뭐가 나올 것이다.
assertThat(result).isEqualTo(1);
assertThatThrownBy(() ->{
reservationService.createReservation(reservationDto);
}).isInstanceOf(NullPointerException.class); //무결성제약조건
}
@Test
public void testBasic() {
int num = 1;
num = num + 10;
// if(num == 11) {
// System.out.println("결과가 맞다");
// }
//assertThat(num).isEqualTo(11);
assertThat(num).isNotEqualTo(11);
boolean flag = true;
assertThat(flag).isTrue();
assertThat(flag).isFalse();
}
@Test
public void testBasic2() {
int num = 1;
num = num + 10;
assertThat(num).isEqualTo(11);
}
@Test
public void testBasic3() {
int num = 1;
num = num + 10;
assertThat(num).isGreaterThan(5);
}
@Test
public void testList() {
List<String> list = List.of("a", "b", "c", "d");
assertThat(list).contains("a");
}
@Test
public void testMap() {
Map<String, String> map = new HashMap<String, String>();
map.put("a", "에이");
map.put("b", "비");
map.put("c", "씨");
assertThat(map).isNotEmpty();
assertThat(map).containsKey("b");
assertThat(map).containsValue("에이");
assertThat(map).isNotEmpty().containsKey("b").containsValue("에이");
map.remove("b");
assertThat(map).doesNotContainKey("b");
}
@Test
public void testException() {
ReservationDto dto = null;
assertThatThrownBy(() ->{
dto.getCustomerNumber();
}).isInstanceOf(Exception.class);
}
}
이수자 평가 발표 준비 기간
3차 프로젝트 관련
게시글 작성자가 아닌 다른 유저가 수정할 수 있는 url로 바로 접근하는 경우 게시글 수정가능했던 부분 -> url로 접근할 수 없도록 수정 및 변경