Struts2 Action的单元测试
作者:网络转载 发布时间:[ 2013/9/18 13:34:31 ] 推荐标签:
对Struts2进行单元测试,以struts 2.2.1.1为例 ,可以使用struts2发行包中的struts2-junit-plugin-2.2.1.1.jar,它里面提供了两个类StrutsTestCase、StrutsSpringTestCase,分别提供对纯struts应用和struts+spring整合时的单元测试支持。下面分别说明。
1.StrutsTestCase
首先准备一个纯struts2工程,建立工程过程略,但有如下的类:
Account.java,是bean
package model;
public class Account {
private String userName;
private String password;
public Account() {
}
public Account(String userName, String password) {
this.userName = userName;
this.password = password;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
AccountAction.java
package action;
import com.opensymphony.xwork2.ActionSupport;
import model.Account;
import java.util.logging.Logger;
public class AccountAction extends ActionSupport{
private Account accountBean;
public String execute() throws Exception {
return SUCCESS;
}
public void validate(){
if (accountBean.getUserName().length()==0){
addFieldError("accountBean.userName","User name is required.");
}
if (accountBean.getUserName().length()<5){
addFieldError("accountBean.userName","User name must be at least 5 characters long.");
}
if (accountBean.getUserName().length()>10){
addFieldError("accountBean.userName","User name cannot be at more thant 10 characters long.");
}
}
public Account getAccountBean() {
return accountBean;
}
public void setAccountBean(Account accountBean) {
this.accountBean = accountBean;
}
}

sales@spasvo.com