1.pom.xml 需要引入的jar包:版本号如下
<spring.version>4.2.2.RELEASE</spring.version><junit.version>4.12</junit.version>
<mockito.core.version>2.0.31-beta</mockito.core.version>
<hamcrest.core.version>1.3</hamcrest.core.version>
<!-- test -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit.version}</version>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-core</artifactId>
<version>${hamcrest.core.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<version>${mockito.core.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>${spring.version}</version>
<scope>test</scope>
</dependency>
2.service测试
基类
import org.junit.runner.RunWith;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.test.context.web.WebAppConfiguration;
import org.springframework.transaction.annotation.Transactional;
@RunWith(SpringJUnit4ClassRunner.class)
@WebAppConfiguration
@ContextConfiguration({"/root-context.xml","/spring-jdbc.xml","/applacation-context.xml"})
@Transactional
public class BaseJunit4Test {
}
service测试类
public class AddressManagerServiceTest extends BaseJunit4Test{
@Resource
IAddressManagerService addressManagerService;
@Test
public void getAreaList(){
List<Map<String, Object>> list= addressManagerService.getAreaList("0");
System.out.println(list.size());
}
}
3.action测试
基类
import org.junit.runner.RunWith;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.AbstractTransactionalJUnit4SpringContextTests;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.test.context.web.WebAppConfiguration;
import org.springframework.transaction.annotation.Transactional;
@RunWith(SpringJUnit4ClassRunner.class)
@WebAppConfiguration
@ContextConfiguration({"/root-context.xml","/spring-jdbc.xml","/applacation-context.xml"})
@Transactional
public class BaseControllerTest extends
AbstractTransactionalJUnit4SpringContextTests {
}
action测试类
public class UserActionTest extends BaseControllerTest {
@Test
public void login(){
UserAction userAction=this.applicationContext.getBean(UserAction.class);
MockHttpServletRequest request = new MockHttpServletRequest();
MockHttpServletResponse response = new MockHttpServletResponse();
Map<String,Object> map=new HashMap<String,Object>();
map.put("password", "E10ADC3949BA59ABBE56E057F20F883E");
map.put("mobile", "188******");
userAction.login(request, "customer", JSONObject.toJSONString(map));
}
}