JUnit
2021. 8. 5. 10:55ㆍ(구)공부/SpringBoot
728x90
메소드 테스트
src/test/java에 가서 class 생성
package com.bit;
import java.util.List;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit.jupiter.SpringExtension;
import com.bit.domain.Board;
import com.bit.persistence.BoardRepository;
//RunWith(SpringRunner.class) 낮은 버전에서는 이거 사용 했었음
@ExtendWith(SpringExtension.class)
@SpringBootTest
public class BoardRepositoryTests {
@Autowired
BoardRepository repo;
@Test
public void testCreate() {
System.out.println("테이블 생성");
}
//더미 데이터
@Test
public void testInsert200() {
for (int i=0; i < 200; i++) {
Board board = new Board();
board.setTitle("제목 :"+i);
board.setContent("내용 :"+i+"채우기");
board.setWriter("user0 :"+i%10);
repo.save(board);
}
}
@Test
public void testByTitle() {
List<Board> results = repo.findByTitle("제목 :0");
for(int i=0; i<results.size(); i++) {
Board board = results.get(i);
System.out.println(board);
}
for(Board board:results) {
System.out.println(board);
}
results.forEach(board->System.out.println(board)); //람다 1
results.forEach(System.out::println); // 람다 2
}
@Test
public void testByWriter() {
repo.findByWriter("user0 :0").forEach(System.out::println);;
}
@Test
public void update200() {
for (int i=0; i < 200; i++) {
Iterable<Board> iter = repo.findAll();
iter.forEach(board->board.setContent("1"));
repo.saveAll(iter);
// repo.save(board);
}
}
@Test
public void testContent() {
repo.findByContent("내용...0 채우기").
forEach(board->System.out.println(board));
}
@Test
public void testByTitleContaining() {
repo.findByTitleContaining("7").
forEach(board->System.out.println(board));
}
@Test
public void testByContentEndingWith() {
repo.findByContentEndingWith("9 채우기").
forEach(board->System.out.println(board));
}
@Test
public void testByWriterEndingWith() {
repo.findByWriterEndingWith("7").
forEach(board->System.out.println(board));
}
@Test
public void testByTitleStartingWith() {
repo.findByTitleStartingWith("제목 :2").
forEach(board->System.out.println(board));
}
}
@Test 꼭 붙여야함
Run configuration 에 가면 Test method에서 테스트할 메소드 선택 가능
더 상세한거 보려면 https://kukirun.tistory.com/66
MySql 연동
properties에 추가 spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.datasource.url=jdbc:mysql://localhost:3306/jpadb?useUnicode=yes&characterEncoding=UTF-8&useSSL=false spring.dataso..
kukirun.tistory.com
추가적인 어노테이션
@Commit // 테스트 결과 commit
728x90
'(구)공부 > SpringBoot' 카테고리의 다른 글
Thymeleaf 입문 (0) | 2021.08.10 |
---|---|
JPA 다양한 select 메소드 (0) | 2021.08.06 |
어노테이션 (0) | 2021.08.05 |
MySql 연동 (0) | 2021.08.05 |
스프링부트 들어가기 (0) | 2021.08.04 |