사전적 의미:
소프트웨어가 예상하지 못한 결과를 내는 것
왜 사용하는가?:
버그는 '**소스 코드'**나 '설계과정에서의 오류' 때문에 발생함
블랙박스 테스트:
<aside> 👉 블랙박스 테스팅이란 소프트웨어 내부 구조나 동작원리를 모르는 블랙박스와 같은 상태에서, 즉 웹 서비스의 사용자 입장에서 동작을 검사하는 방법입니다!
</aside>
개발자 테스트:
<aside> 👉 "개발자 본인이 작성한 코드는 본인이 가장 잘 안다." 개발자가 '내가 작성한 코드'를 검증해 주는 '테스트 코드'를 직접 작성하는 것을 말해요!
</aside>
장점
단점
<aside> 👉 하지만 스프링에서는 ****'테스트 코드' 작성을 잘 할 수 있는 환경을 제공해준답니다! 그럼 저희도 같이 한번 테스트 코드를 작성해보러 가시죠~!
</aside>
버그의 발견 시간이 늦어질수록 대응하기 어렵다
→ 그래서 선제적인 대응이 필요한것
<aside> 💡 JUnit이란 자바 프로그래밍 언어용 단위 테스트 프레임워크입니다.
</aside>
dependencies {
testImplementation 'org.springframework.boot:spring-boot-starter-test'
}
test {
useJUnitPlatform()
}
<aside> 💡 ORM: Object-Relational Mapping
Object: 객체 (자바) Relational: DB (H2, MySQL)
</aside>
<aside> 💡 JPA: Java Persistence API 자바 ORM 기술에 대한 표준 명세
</aside>
JPA 는 표준 명세이고, 이를 실제 구현한 프레임워크 중 사실상 표준
사실상 표준 보통 기업간 치열한 경쟁을 통해 시장에서 결정되는 비 공식적 표준이다
출처: 위키백과