关注微信公众号 太平洋学习网 扫描二维码
最新消息:关注【太平洋学习网】微信公众号,可以获取全套资料,【全套Java基础27天】【JavaEE就业视频4个月】【Android就业视频4个月】

springmvc+spring+junit4单元测试案例(很简单)

Javaweb 太平洋学习网 浏览 评论

在普通java项目中,junit测试项目只需要在方法上直接使用@Test注解就可以运行了,但是在springmvc+spring的项目中使用junit4测试java web项目直接使用@junit注解是会报错的,因为我们难免会用到@Autowired注解,直接使用的话@Autowired注解的对象就会为null。

springmvc+spring+junit4这样的项目,是需要注入spring对象的,因此我们使用junit4时需要先使用@RunWith和@ContextConfiguration相关注解注入spring-context.xml里面的所有实例对象(你们的web项目可能不叫这个xml名字),下面来看看如何在spring项目中使用它。

1:首先引入junit4 maven的jar包,如下。

<dependency>
   <groupId>junit</groupId>
   <artifactId>junit</artifactId>
   <version>4.12</version>
</dependency>
<dependency>
	<groupId>org.springframework</groupId>
	<artifactId>spring-test</artifactId>
	<version>5.0.2.RELEASE</version>
	<scope>test</scope>
</dependency>

2:添加一个junit测试类,例如MapperTest.java,如下。

package com.xfexp.examination.test;

import java.util.ArrayList;
import java.util.List;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import com.xfexp.exam.dao.AnswerMapper;
import com.xfexp.exam.model.Answer;

@RunWith(value = SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = {"classpath:spring/spring-context.xml"})
public class MapperTest {
   
   @Autowired
   private AnswerMapper answerMapper;

   @Test
   public void test() {
      List<Answer> list = new ArrayList<>();
      for (int i = 0; i < 10; i++) {
         Answer answer = new Answer();
         answer.setContent("dddddddddd"+i);
         answer.setIsCorrect((short) 0);
         answer.setQuestionId((long) 1);
         list.add(answer);
      }
      int count = answerMapper.insertAnswers(list);
      System.out.println("count="+count);
   }
}


来源网站:太平洋学习网,转载请注明出处:http://www.tpyyes.com/a/javaweb/2017/0906/205.html

    与本文相关的文章