5.7 测试

springboot的教程里有一个测试,是关于如何测试Controller,http请求之类的
https://github.com/spring-guides/gs-testing-web.git
下面讲的是如何测试一个Repository或者service
一 .单个类测试
package cn.data;
import cn.jssp.data.repositories.UserRepository;
import cn.jssp.system.Common;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest 
public class UserRepositoryTest{
    @Autowired 
    private UserRepository userRepository;
    @Test 
    public void testExistsByUsername(){
        assert userRepository.existsByUsername("abcd");
        assert!userRepository.existsByUsername("abcdfdsasfd");
    }
}
注意这几个标签:
@SpringBootTest 表示这个类是测试类
@Autowired 自动注入Repository
@Test表示这是一个测试方法,带有这个标签的方法都会被JUnit调用

二 使用JUnit Generator自动生成测试类
这个Idea插件可以生成测试类的框架,覆盖指定类的所有方法:
首先点击菜单File,然后setting,然后点击plugin,在右边搜索框输入Junit Generator,点击Intall。如图所示: