SpringBoot:单元测试:实战单元测试调用Controller-service层接口(2)

案例实战Controller层登陆方法测试

具体方法看不懂的小伙伴可看之前的get、post请求文章,这里只做具体调用讲解

@RunWith(SpringRunner.class)
@SpringBootTest(classes={ProjectApplication.class})
public class UserTest {

    //注入controller
    @Autowired
    private UserController userController;

    /**
     * 测试用户登陆接口
     */
    @Test
    public void loginTest(){
        User user = new User();

        user.setUsername("张三");
        user.setPwd("123");
        //调用controller层方法
        JsonData jsonData = userController.loginUser(user);

        System.out.println(jsonData.toString());

        //断言
        //判断状态码 预期是0返回正确
        TestCase.assertEquals(0,jsonData.getCode());

    }
}

案例实战 视频列表Service层的单元测试

@RunWith(SpringRunner.class)
@SpringBootTest(classes={ProjectApplication.class})
public class VideoTest {

    //注入视频接口
    @Autowired
    private VideoService videoService;

    @Before
    public void testOne(){
        System.out.println("这是个测试 before");
    }

    /**
     * 视频接口测试
     */
    @Test
    public void testVideoList(){
    //调用service层接口方法 返回集合对象
        List<Video> videoList = videoService.listVideo();

        //判断对象是否为空  预期是大于0
        TestCase.assertTrue(videoList.size()>0);
    }

    @After
    public void testThree(){
        System.out.println("这是个测试 after");
    }

}

使用IDEA快捷方式创建测试类

无需手动去创建测试类方法,使用idea自带方式去new

Step1:选择接口方法鼠标右键
在这里插入图片描述
在这里插入图片描述
Step2:选择要测试的接口方法
在这里插入图片描述
这样在Test包下就自动生成了测试类了

根据公司情况,写单元测试,核心接口一定要写,非核心的尽量写

断言类型,可以细化,我这里只是判断了长度和非空,也可以判断结果为1或者2


版权声明:本文为q736317048原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。