2012-09-11 2 views
1

숫자 변환을위한 단위 테스트를 올바르게 작성하여 100 % 테스트 커버리지를 유지하고 모든 가능성을 커버하는 방법을 파악하려고합니다.제대로 단위 테스트 번호 변환을하는 방법

자, 정수를 로마 숫자로 변환하는 함수가 있다고 가정 해 보겠습니다. 1에서 3999까지 작동합니다 :

function integerToRoman(integer) { ... } 

어떻게 실제로 작동하는지 확인할 수 있습니까? 1에서 3999 사이의 모든 숫자에 대해 4000 단위 테스트를 작성하는 것은 좋은 선택이 아닌 것처럼 보입니다. 다른 한편, 난 그냥 임의의 숫자를 선택하고 그들에 대한 테스트를 작성한다면, 나는 그 기능이 작동하는지 100 % 확신 할 수 없다.

답변

1

100 % 적용 범위는 가능한 모든 입력 값을 테스트하는 것을 의미하지 않습니다. 그러나 그것은 의미 당신 :

  1. 테스트의 모든 기능을 선 시험 일반 (일반) 입력 값
  2. 커버와 커버 (모든 것이 가능하지만, 다른 범위에서 그들은 다르게 처리하는 경우)
  3. 커버 모든 가장자리의 경우는 그것 뿐이다 (물론 입력 된 값을 포함하지 않음)
  4. 커버 다양한 유효하지 않은 입력 값

생각할 수 있습니다.