第 3 章 为 GreetingController 创建主类和测试类

在命令行中创建项目时,Quarkus Maven 插件会自动使用 Spring Web 注解生成 GreetingController 类文件,用于定义 REST 端点和包含 GreetingController 的单元测试的类文件。

流程

  1. 创建包含以下代码的 src/main/java/org/acme/spring/web/GreetingController.java 文件。

    src/main/java/org/acme/spring/web/GreetingController.java

    package org.acme.spring.web;
    
    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    @RestController
    @RequestMapping("/greeting")
    public class GreetingController {
    
        @GetMapping
        public String hello() {
            return "Hello Spring";
        }
    }

  2. 创建包含以下代码的 src/test/java/org/acme/spring/web/GreetingControllerTest.java 文件。

    src/test/java/org/acme/spring/web/GreetingControllerTest.java

    package org.acme.spring.web;
    
    import io.quarkus.test.junit.QuarkusTest;
    import org.junit.jupiter.api.Test;
    
    import static io.restassured.RestAssured.given;
    import static org.hamcrest.CoreMatchers.is;
    
    @QuarkusTest
    public class GreetingControllerTest {
    
        @Test
        public void testHelloEndpoint() {
            given()
              .when().get("/greeting")
              .then()
                 .statusCode(200)
                 .body(is("Hello Spring"));
        }
    
    }