티스토리 뷰

공부/tdd

xunit example 실습

doublemetal 2014. 4. 18. 17:46




xunit_implementation.zip


테스트소스만 간단히 보게되면 다음과 같다.

미완성 버전이고 아직 이걸 어떻게 활용해야할지 감은 안오지만,

단순하면서도 강력한 기술이라고 생각한다.


켄트벡은 책에서 파이썬 버전의 xunit을 예제로 사용했는데

나는 자바를 좋아하므로 자바버전으로 개발해보았다.


자바에는 리플렉션이란 훌륭한 기술이 있어서

파이썬버전과 동일하게 구현하였다.

.

.


package xunit;


import static xunit.AssertionModule.*;


public class TestCaseTest extends TestCase {


TestCaseTest(String methodName) {

super(methodName);

}


public void testTemplateMethod() {

TestResult result = new TestResult();

WasRun sut = new WasRun("testMethod");


sut.run(result);

assertEquals("setUp testMethod tearDown ", sut.log);

}


public void testResult() {

TestResult result = new TestResult();

WasRun sut = new WasRun("testMethod");


sut.run(result);

assertEquals("1 run, 0 failed", result.summary());

}


public void testFailedResult() {

TestResult result = new TestResult();

WasRun sut = new WasRun("testBrokenMethod");


sut.run(result);

assertEquals("1 run, 1 failed", result.summary());

}


public void testFailedResultFormatting() {

TestResult sut = new TestResult();

sut.testStarted();

sut.testFailed();

assertEquals("1 run, 1 failed", sut.summary());

}


public static void main(String args[]) {

TestSuite suite = new TestSuite(TestCaseTest.class);

suite.run(new TestResult());

}


}

댓글
댓글쓰기 폼