http://httpunit.sourceforge.net/
위의 URL이 httpunit의 주소입니다. jUnit과 함께 사용해야하는, Java 기반의 solution입니다.
Cookbook 문서를 읽어보면 알수 있는 것입니다만 (아래의 글은 Cookbook 문서를 보고 간단히 요약한 것입니다) HttpUnit 프레임워크는 WebConversion 클래스를 사용해서 웹 브라우저가 만드는 HTTP conversion을 흉내냅니다.
WebRequest req = new GetMethodWebRequest( "http://www.meterware.com/testpage.html" );
WebResponse resp = wc.getResponse( req );
WebResponse 객체를 받아온 다음에는 getText() 메소드를 불러서 텍스트 형태의 프로세싱을 할 수도 있고, getDOM() 메소드를 호출해서 DOM 기반의 조작을 할 수도 있습니다. (이 편이 좀 더 편하긴 하겠네요.)
다음 처럼 하면 링크를 따라가는 것도 가능합니다.
WebResponse resp =
wc.getResponse( "http://www.httpunit.org/doc/cookbook.html" ); // read this page
WebLink link = resp.getLinkWith( "response" ); // find the link
link.click(); // follow it
WebResponse jdoc = wc.getCurrentPage(); // retrieve the referenced page
폼 프로세싱이나 테이블 형태의 자료 처리도 가능합니다. 폼 프로세싱 예제만 살펴보면,
assertEquals( "La Cerentolla", form.getParameterValue( "Name" ) );
assertEquals( "Chinese", form.getParameterValue( "Food" ) );
assertEquals( "Manayunk", form.getParameterValue( "Location" ) );
assertEquals( "on", form.getParameterValue( "CreditCard" ) );
위와 같이 해서 폼의 기본 파라메타 값이 어떻게 만들어져있는지 검사할 수도 있고,
form.removeParameter( "CreditCard" ); // clear the check box
form.submit(); // submit the form
폼에 포함된 컨트롤들에 값을 넣어서 날릴 수도 있습니다.
웹 기반의 인터페이스 테스트를 하는 데 굉장히 유용할 것 같네요. :-) 하지만 이 프레임워크의 가장 큰 약점은...
는 점이 되겠군요 -_-;
다들 알고 있는데 저만 모르는 사실들이 아주 많은것 같아 좀 우울합니다 ㅋㅋ
'Extremely Agile > TDD' 카테고리의 다른 글
| 디버깅의 도 (1) (2) | 2007/12/26 |
|---|---|
| JWebUnit: 웹 사이트에 대한 단위 테스트 프레임워크 (0) | 2007/09/26 |
| HttpUnit: 웹 사이트에 대한 단위 테스트 프레임워크 (3) | 2007/09/25 |
| TDD를 사용한 개발 절차 (4) | 2007/09/23 |
| 웹 사이트에 대한 테스트 자동화 툴 - Selenium (0) | 2007/09/20 |
| CppUnit을 사용한 Unit 테스트 코드 작성법 (0) | 2007/09/19 |
댓글을 달아 주세요
잘보고갑니다. ^^
2008/03/24 13:38 [ ADDR : EDIT/ DEL : REPLY ]많은도움얻고갑니다 ㅎ
감사합니다. ^^
2008/03/24 14:03 [ ADDR : EDIT/ DEL ]이것은 위대한이며 많은 사람들이이 공유를 주셔서 감사합니다 사랑 할거야 확신
2011/11/22 04:12 [ ADDR : EDIT/ DEL : REPLY ]