티스토리 뷰

Structural Testing Technique에는 구문 커버리지, 분기 커버리지, 경로 커버리지 등이 있습니다.

 

구문 커버리지 테스트(Statement Coverage Test)

 

프로그램의 모든 구문을 적어도 1번 이상 수행할 때 100%의 커버리지를 가집니다. 구조적 테스트 커버리지 중 가장 간단하고 자동화하기가 쉽습니다. 모든 입력값에 대해 올바르게 작동하는지 보장할 수 없습니다. 모든 경로를 실행할 수 없다는 단점이 있습니다.

 

 

분기 커버리지 테스트(Branch Coverage Test)

 

프로그램의 모든 분기 조건들이 적어도 1번씩 수행될 때 100%의 커버리지를 가집니다. 각 분기문에서 참과 거짓을 적어도 한번 이상 실행시키는 것이 기준이 됩니다. 분기 커버리지는 구문 커버리지를 포함합니다. 코드에서 분기 지점을 찾기 쉽다는 장점이 있는 반면 분기 기법을 사용한 여러 복합적인 조건이 실행되지 않습니다.

 

 

 

 

경로 커버리지 테스트(Path Coverage Test)

 

프로그램의 가능한 모든 경로에 대해 테스트를 수행했는지 여부를 기준으로 합니다. 프로그램의 모든 경로를 적어도 한번씩 수행할 때 100%의 커버리지를 가집니다. 가장 큰 테스트 범위를 가집니다. 코드 커버리지의 가장 상위 레벨에 해당됩니다. 모든 순서들을 실행할 수 있지는 않으며, 100%의 커버리지는 불가능합니다.

 

 

위의 순서도에서 구문 커버리지 테스트는 모든 명령문을 적어도 한번씩 수행하도록 Test Case를 만들어야 하므로 [가 - 다 - 마]에 대한 테스트가 필요합니다. 분기 커버리지 테스트의 경우 각 분기 명령문이 참 또는 거짓으로 결과가 나와야 하므로 [경로1 : 가 - 다 - 마, 가 - 나 - 라, 경로2 : 가 - 다 - 라, 가 - 나 - 마]가 됩니다. 경로1 또는 경로2를 시행하면 됩니다. 마지막으로 경로 커버리지 테스트에서는 모든 경로를 한번씩 수행해야 하므로 [경로1 : 가 - 나 - 라, 경로2 : 가 - 다 - 마, 경로3 : 가 - 다 - 라, 경로4 : 가 - 나 - 마]를 모두 테스트합니다.

 

댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday