Summary – Test Harness Design Patterns

Summary

Title : Test Harness Design Patterns (http://msdn.microsoft.com/en-us/magazine/cc163752.aspx)

6 lightweight test harness patterns

1) Flat Test case data
text file 형태 flat data를 기록함.테스트케이스 ID,   데스트데이터, 기대결과 등이 기록됨
이를 사용하는 방법/모델은 2가지로 streaming processing model, Buffered model이다.

Streaming model 의 pseudocode는 아래와 같으며, Streaming 모델은 파일에서 계속하여 데이터를 읽어내려가면서 테스트를 수행한다.

open test case data store
loop
read a test case
parse id, input, expected
send input to system under test
if actual result == expected result
write pass result to external results file
else
write fail result to external results file
end if
end loop

 

Buffered Model의 슈도코드는 아래와 같다.

open test case data store
loop
read a test case from external storage
save test data to in-memory data store
end loop
loop
read a test case
parse test case id, input, expected
send input to system under test
if actual result == expected result
write pass result to in-memory data store
else
write fail result to in-memory data store
end if
end loop

loop
read test result from in-memory store
write test result to external storage
end loop

file에서 일괄로 읽어온 데이타를 메모리에 넣어서 처리함. 성능에 우수..

2) Hierarchical Test Data
XML 이 주로 사용되며 streaming, buffered모두 사용될 수 있다.
XML 처리를 위한 클래스를 사용해서 처리

3) Relational Test Case Data
SQL에 테스트케이스 데이타를 저장하여 사용한다.