7 ~ 9 : 오류 처리, 경계, 단위 테스트
7장 : 오류 처리
오류 코드보다 예외를 사용하라
public class DeviceController {
...
public void sendShutDown() {
DeviceHandle handle = getHandle(DEV1);
if (handle != DeviceHandle.INVALID) {
retrieveDeviceRecord(handle);
if (record.getStatus() != DEVICE_SUSPENDED) {
pauseDevice(handle);
clearDeviceWorkQueue(handle);
closeDevice(handle);
} else {
logger.log("Device suspended. Unable to shut down");
}
} else {
logger.log("Invalid handle for : " + DEV1.toString());
}
}
...
}
Try-Catch-Finally문부터 작성하라
미확인(unchecked) 예외를 사용하라
예외에 의미를 제공하라
호출자를 고려해 예외 클래스를 정의하라
정상 흐름 정의하라
null을 반환하지 마라
null을 전달하지 마라
8장 : 경계
외부 코드 사용하기
경계 살피고 익히기
log4j 익히기
학습 테스트는 공짜 이상이다
아직 존재하지 않는 코드를 사용하기
깨끗한 경계
9장 : 단위 테스트
TDD 법칙 세 가지
깨끗한 테스트 코드 유지하기
테스트는 유연성, 유지보수성, 재사용성을 제공한다.
깨끗한 테스트 코드
도메인에 특화된 테스트 언어
이중 표준
테스트 당 assert 하나
테스트 당 개념 하나
F.I.R.S.T
Last updated