SpringBoot如何进行代码测试

  1. 程序里面已经实现了一个最为简单的控制器程序类。

    package com.gwolf;

     

    import org.springframework.boot.SpringApplication;

    import org.springframework.boot.autoconfigure.EnableAutoConfiguration;

    import org.springframework.stereotype.Controller;

    import org.springframework.web.bind.annotation.RequestMapping;

    import org.springframework.web.bind.annotation.ResponseBody;

     

    @Controller

    @EnableAutoConfiguration

    public class SampleController {

     

        @RequestMapping("/")

        @ResponseBody

        public String index() {

            return "Greetings from Spring Boot!";

        }

        

        public static void main(String[] args) {

            SpringApplication.run(SampleController.class, args);

        }

    }

    SpringBoot如何进行代码测试_第1张图片

  2. 从实际的项目角度来讲,必须要求考虑到代码的测试问题,且现在的程序代码属于SpringBoot,则需要在你的项目之中进行如下的pom.xml文件的变更。

    【springbootbase】修改pom.xml配置文件,追加SpringBoot测试支持类:

                org.springframework.boot

                spring-boot-starter-test

                test

           

            

           

                junit

                junit

                test

           

    SpringBoot如何进行代码测试_第2张图片

  3. 只要进行java测试,最简单使用的就是junit,所以这个开发包一定要随测试一起导入。

    【springbootbase】建立一个测试程序类,现在是一个SpringBoot程序,所以需要使用注解:

    package com.gwolf.test;

     

    import com.gwolf.SampleController;

    import org.junit.runner.RunWith;

    import org.springframework.boot.test.context.SpringBootTest;

    import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;

     

    @SpringBootTest(classes = SampleController.class)

    @RunWith(SpringJUnit4ClassRunner.class)

    public class TestSampleController {

        

    }

    SpringBoot如何进行代码测试_第3张图片

  4. classes = SampleController.class表示我们需要进行单元测试的程序类:

    SpringBoot如何进行代码测试_第4张图片

  5. 因为我们需要测试的程序是web程序,所以还需要加入注解:@WebAppConfiguration。

     

    package com.gwolf.test;

     

    import com.gwolf.SampleController;

    import org.junit.runner.RunWith;

    import org.springframework.boot.test.context.SpringBootTest;

    import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;

    import org.springframework.test.context.web.WebAppConfiguration;

     

    @SpringBootTest(classes = SampleController.class)

    @RunWith(SpringJUnit4ClassRunner.class)

    @WebAppConfiguration

    public class TestSampleController {

        

    }

    SpringBoot如何进行代码测试_第5张图片

  6. 现在springboot整体测试程序如下:

    package com.gwolf.test;

     

    import com.gwolf.SampleController;

    import junit.framework.TestCase;

    import org.junit.Test;

    import org.junit.runner.RunWith;

    import org.springframework.boot.test.context.SpringBootTest;

    import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;

    import org.springframework.test.context.web.WebAppConfiguration;

     

    import javax.annotation.Resource;

     

    @SpringBootTest(classes = SampleController.class)

    @RunWith(SpringJUnit4ClassRunner.class)

    @WebAppConfiguration

    public class TestSampleController {

        @Resource

        private SampleController sampleController;

        

        @Test

        public void testIndex() {

            TestCase.assertEquals(this.sampleController.index(),

                    "Greetings from Spring Boot!");

        }

    }

    SpringBoot如何进行代码测试_第6张图片

  7. 运行单元测试类,查看测试类是否有绿色的条。

    SpringBoot如何进行代码测试_第7张图片

你可能感兴趣的:(java)