@Test
    void testGrpcService() throws Exception {
        final TestServiceBlockingStub client = GrpcClients.newClient(newUrl("h2c") + '/',
                                                                     TestServiceBlockingStub.class);
        final HelloRequest request = HelloRequest.newBuilder()
                                                 .setName("world")
                                                 .build();
        assertThat(client.hello(request).getMessage()).isEqualTo("Hello, world");

        final WebClient webClient = WebClient.of(newUrl("h1c"));
        final HttpResponse response = webClient.get("/internal/docs/specification.json");

        final AggregatedHttpResponse res = response.aggregate().get();
        assertThat(res.status()).isEqualTo(HttpStatus.OK);
        assertThatJson(res.contentUtf8()).node("services[1].name").isStringEqualTo(
                "testing.spring.grpc.TestService");
        assertThatJson(res.contentUtf8())
                .node("services[1].exampleHeaders[0].x-additional-header").isStringEqualTo("headerVal");
        assertThatJson(res.contentUtf8())
                .node("services[1].methods[0].exampleHeaders[0].x-additional-header")
                .isStringEqualTo("headerVal");
    }
This uses {@link ArmeriaAutoConfiguration} for integration tests.
application-autoConfTest.yml will be loaded with minimal settings to make it work.
spring/boot3-autoconfigure/src/test/java/com/linecorp/armeria/spring/ArmeriaAutoConfigurationTest.java