2023.05.28
1. 이 책이 다루는 테스트 레벨은 어디까지인가?
따지자면 유닛테스트만 다루고 통합테스트는 다루지 않는다. 정확히 말하자면 테스트를 통해 애자일 프로세스를 구현하기 위한 방법론에 관한 책 이라고 할 수 있겠다.
2. 모의객체(Mock Object)를 쓰기vs안쓰기
모의객체란? TDD로 테스트를 진행하기 어려운 경우(네트워크, 데이터베이스 등..)에는 모의객체를 통해 테스트를 진행한다.
이 모의객체가 위험할 수 있고 이 저자가 선호하지 않는 이유는 의존성 때문이다.
모의객체를 사용하면 객체간의 의존성이 높아지고, 이는 적신호이기 때문에 특히 통합 테스트를 할 때는 목객체는 거의 쓰지 않는다.
3. 동등성과 동일성
3-1. 동등성(Equality)
동등성은 하나의 객체가 가지고 있는 값이 같을 때이다.
3-2. 동일성(Identity)
동일성은 할당된 메모리 주소값이 일치할 때이다.
이 책에서는 동일성이라고 오타가 나왔고 이 주제가 언급되었다.
4. QA
4-1. QA란?
품질보증, Quality Analysis. 하나의 소프트웨어가 의도한대로 오류 없이 잘 작동하는지, 명세서의 요구를 모두 반영하는지 테스트하는 것을 품질보증이라고 한다. 명세서의 요구를 하나 하나 다 테스트하고 실행하는 것이 품질보증자가 하는 일.
4-2. QA의 범위
Verification: 명세서의 요구를 모두 반영하는지
Validation: 명세서의 요구들이 소비자의 니즈를 충족/만족시킬 수 있는지
QA는 이 두개를 모두 커버한다
4-3. 본문에서 나온 말의 의미
본문에서 잘 쓰여진 테스트코드는 QA가 수동에서 능동으로 변할 수 있게끔 한다 라는 구절이 나와있다.
해당 단락의 맥락에서는 수동과 능동의 개념이 없었으므로, 컨피던스 레벨의 증가 정도로만 해석 가능하다.
5. 테스트간의 종속성해결
테스트간의 종속성이 생길 때, 해결을 하는 경우도 있고 해결을 하지 않고 놔두는 경우가 있다.
그것을 판가름하는 것은 문제의 여부이다.
그 종속성이 문제가 된다면 그것을 해결하면 되고, 아니면 그대로 놔두어도 된다.
'etc > TDD' 카테고리의 다른 글
켄트백의 TDD 3회차 스터디 18장-24장(~200p) (0) | 2023.06.27 |
---|---|
켄트백의 TDD 3회차 스터디 11장-17장(~157p) (0) | 2023.06.18 |
켄트백의 TDD 2회차 스터디 6장-10장(~107p) (0) | 2023.06.08 |