TDD

테스트의 범위

테오구 2022. 4. 26. 11:08
728x90

Right-BICEP

모든 요구 사항이 정상 동작 하는지 확인해야 합니다.

어떤 것을 집중하여 확인하여야 하는지 알아볼까요?

Boundary conditions

모든 코너 케이스에 대해 테스트를 해야합니다. ex) 학생이 0명일 때 1000명일 때 그 이상일 때 이런 모든 케이스들에 대해서 테스트를 해야합니다.

잘못된 포맷의 인풋, null, 특수문자, 잘못된 이메일, 작은 숫자, 큰 숫자, 중복, 순서가 맞지 않은 경우 어떻게 동작 해야 하는지 이러한 케이스에 대해서 테스트가 이루어질 수 있도록 해야합니다.

Inverse relationship

역관계를 적용해서 결과값을 확인해야합니다. 즉 일관성을 유지해야 합니다. ex) 5 + 5 = 10 인 것을 테스트했다면 10 - 5 = 5도 적용이 되어야 합니다.

Cross-check

다른 수단을 이용해서 결과값이 맞는지 확인하는 방식 예를 들면 추가된 과일의 갯수를 구하는 함수를 테스트 한다면 이 결과값이 맞는지 확인하기 위해서는 전체 과일에서 예전의 과일의 갯수를 뺀만큼 이 값과 동일해야합니다.

또한 우리가 알고리즘을 제작할 경우 그 알고리즘이 정확하게 구현하는지 확인하기 위해서 동일한 알고리즘을 구현한 다른 라이브러리를 이용해서 비교할 수 있습니다.

Error conditions

네트워크 에러든, 메모리 부족이든, 서버가 다운되는 예상한 에러에 대해서 처리할 수 있어야 합니다.

Performance characteristics

성능 확인은 테스트를 통해서 정확한 수치로 확인해야 합니다.

728x90

'TDD' 카테고리의 다른 글

좋은 테스트의 커버리지  (0) 2022.04.27
FIRST 원칙  (0) 2022.04.25
좋은 테스트 코드  (0) 2022.04.23
stub  (0) 2022.04.22
mock  (0) 2022.04.19