테스트코드
- 개발 과정 중 예상치 못한 문제를 미리 발견할 수 있다.
- 작성한 코드가 의도한 대로 작동하는지 검증할 수 있다.
- 코드의 변경, 추가, 삭제 시 사이드 이펙트를 줄일 수있다. → 마음편한 변경, 추가, 삭제 가능 → 마음편한 리팩터링 가능! “돌아가는 코드 건들지마라!!” ❌
JUnit 5 (Java Unit Testing)
자바 단위 테스트 자동화를 지원하는 프레임워크.
JUnit Platform, JUnit Jupiter, JUnit Vintage 모듈로 구성된다.
실행 구조
JUnit은 어노테이션이 지정된 메서드 또는 클래스를 실행합니다.
JUnit은 @BeforeClass로 지정된 클래스를 가장 먼저 실행
그 이후로는 @Test, @Befre, @After로 지정된 메서드를 실행
테스트 케이스가 모두 실행 완료되면 @AfterClass로 지정된 클래스가 실행
전역
AAA 패턴
- Arrange (준비): 테스트를 실행하기 전에 필요한 것들을 준비.
- Act (실행): 테스트 코드를 실행.
- Assert (단언): 실행한 코드가 예상한대로 동작했는지 확인. assertTrue(), assertThat() 등의 코드들이 여기에 해당.
https://codechacha.com/ko/unittest-aaa-pattern/
https://withhamit.tistory.com/490
어노테이션 (Annotation)
주석이라는 의미, JDK 1.5 버전 이상에서 자바 소스 코드에 사이에 @ 기호를 앞에 붙여서 사용.
@Test : 가장 기본이 되는 Annotation으로, 특정 Method 에 선언 하여 Test 하도록 함
@BeforeEach : 테스트 할 메서드가 호출되기 전에 '매번 먼저' 호출되는 코드
// 전역 변수도 같은 효과가 있어 매번 호출된다.
@AfterEach : 테스트 할 메서드가 호출된 후에 '매번' 호출되는 코드
@BeforeAll : 테스트 할 메서드가 호출되기 전에 '먼저 한번만' 호출되는 코드
@AfterAll : 테스트 할 메서드가 호출된 후에 '한번만' 호출되는 코드
@RepeatedTest : 반복 테스트라는 것을 명시함
@DisplayName : 테스트 클래스 또는 테스트 메서드에 대한 사용자 지정 표시 이름을 선언
용도
- 컴파일러에게 코드 작성 문법 에러를 체크하도록 정보를 제공함
- 소프트웨어 개발툴이 빌드나 배치시 코드를 자동으로 생성할 수 있도록 정보 제공함
- 실행 시(런타임시) 특정 기능을 실행하도록 정보를 제공함
종류
파이썬 2차원 배열 선언하기
[Python] 2차원 배열 선언하기
Python에서의 1차원 배열 선언 Python에서 1차원 배열을 선언할 때는 다음과 같이 * 연산자를 이용해 간단하게 선언할 수 있다. [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] 같은 방식으로 2차원 배열 선언 하지만, 2차원
velog.io
https://achiven.tistory.com/1175584309
OSI 7계층
given, when, then
given: 주어지는 값
when: 무엇을 했을 때
then: 이것을 원한다
'개발일지 > 일간회고 (TIL)' 카테고리의 다른 글
레이어드 아키텍처 패턴 (0) | 2022.12.06 |
---|---|
왜 안되는걸까 (0) | 2022.12.06 |
자바(Java) Interface, Stream, Optinal (0) | 2022.12.01 |
Java 코드가 실행되는 과정 (0) | 2022.11.30 |
발표도 끝! / TIL (22-09-14) (0) | 2022.11.29 |