'JAVA/jUnit'에 해당되는 글 1건
- 2009.09.25 :: In-Container 방식 Struts Test(ServletTestCase)
JAVA/jUnit
2009. 9. 25. 09:43
출처 : http://cptcho.tistory.com/18
먼저 CACTUS와 StrutsTest를 받아야 한다.
CACTUS를 사용하기 위해서 해주어야 하는일은 3가지다.
1. class-path에 CACTUS 라이브러리들을 복사
2. web.xml 에 ServletRedirector Servlet 추가
이렇게 하면 CACTUS 사용 준비는 끝나게 되고 StrutsTest는 다운받은 jar파일을 lib에 추가만 해주면 된다.
그럼 TestCase를 작성해 보자
public class LoginTestCase extends CactusStrutsTestCase {
public LoginTestCase(String testName) {
super(testName);
}
/**
* Client side execution
*/
public void beginLogin(WebRequest theRequest) {
// Request Parameter Setting
theRequest.addParameter("KEY", "VALUE");
}
/**
* Server side execution
*/
public void testLogin() {
setRequestPathInfo("/LoginAction");
actionPerform();
verifyForward("login_success");
}
}
TestCase를 만들고 나면 WebAPP WEB-INF/classes에 추가해준다.
다른 방법이 있는지 모르겠지만 웹어플에 추가해주지 않으면 테스트가 안되었다.
먼저 CACTUS와 StrutsTest를 받아야 한다.
CACTUS를 사용하기 위해서 해주어야 하는일은 3가지다.
1. class-path에 CACTUS 라이브러리들을 복사
2. web.xml 에 ServletRedirector Servlet 추가
<servlet>
<servlet-name>ServletRedirector</servlet-name>
<servlet-class>org.apache.cactus.server.ServletTestRedirector</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ServletRedirector</servlet-name>
<url-pattern>/ServletRedirector</url-pattern>
</servlet-mapping>
cactus.contextURL=http://IP:PORT/CONTEXT ROOT
cactus.servletRedirectorName=ServletRedirector
cactus.enableLogging=true
이렇게 하면 CACTUS 사용 준비는 끝나게 되고 StrutsTest는 다운받은 jar파일을 lib에 추가만 해주면 된다.
그럼 TestCase를 작성해 보자
public class LoginTestCase extends CactusStrutsTestCase {
public LoginTestCase(String testName) {
super(testName);
}
/**
* Client side execution
*/
public void beginLogin(WebRequest theRequest) {
// Request Parameter Setting
theRequest.addParameter("KEY", "VALUE");
}
/**
* Server side execution
*/
public void testLogin() {
setRequestPathInfo("/LoginAction");
actionPerform();
verifyForward("login_success");
}
}
TestCase를 만들고 나면 WebAPP WEB-INF/classes에 추가해준다.
다른 방법이 있는지 모르겠지만 웹어플에 추가해주지 않으면 테스트가 안되었다.