-
테스트 케이스는 테스트 자료(입력값)와 예상되는 출력값으로 구성되어 있다.
테스트를 해부해보면,
셋업(Setup)
테스트가 행해질 수 있도록 소프트웨어를 어떠한 상태나 조건으로 만든다.
딱, 테스트가 실행될 수 있는 환경으로 만들어 놓는 것!
예를 들어, 인벤토리에 있는 제품을 삭제하는 테스트를 실행하려면 우선! 제품이 인벤토리에 존재해야 함.실시(Invocation)
실시는 하나의 테스트 케이스 실행을 의미한다.
입력값들을 제공하고, 테스트에 적용되는 소프트웨어를 실행한다.평가(Assessment)
테스트가 적용된 소프트웨어의 행동을 관찰한다.
가능하면, 실행된 행동들을 기록하고 결과를 예상된 결과와 비교한다.해체(Teardown)
테스트가 끝난 후에 정리하는 과정.
데이터베이스 연결 닫기, 추가한 데이터 삭제 또는 삭제한 데이터 복구, 열린 파일 핸들 닫기 등이 그 예다.
테스트 오라클은 실제 입력값과 예상된 출력값이 일치하는지 결정한다.
인간 → 자동화
예상되는 출력값이 얼마나 중요한지 알 수 있음.
테스트란,
그저 테스트를 실행하고 결과를 확인하는 것만이 아니다!
셋업 단계와 해체 단계는 테스트 실행에 있어서 중요한 측면임
많은 테스트들에서 재사용할 수 있는 일관된 테스트 절차는
테스팅을 매우 쉽게 만들어주고,
해체 단계는 테스트가 끝난 후에도 시스템이 예견되고 안전한 상태로 만들어준다.
'테스팅 관련 > 개념' 카테고리의 다른 글
소프트웨어 개발의 "V 모델" (0) 2020.05.27 테스팅 원리 (0) 2020.05.27 신뢰성(Dependability) 정의 (0) 2020.05.26 왜 소프트웨어 테스팅은 어려울까? (0) 2020.05.23 SW Testing 101 (0) 2020.05.22