micronaut测试

ee7vknir  于 2021-06-29  发布在  Java
关注(0)|答案(0)|浏览(279)

尝试使用micronaut声明性http客户端进行junit5e2e功能测试。

public interface IProductOperation {
    @Get(value = "/search/{text}")
    @Secured(SecurityRule.IS_ANONYMOUS)
    Maybe<?> freeTextSearch(@NotBlank String text);
}

声明性micronaut http客户端

@Client(
    id = "feteBirdProduct",
    path = "/product"
)
public interface IProductClient extends IProductOperation {
}

junit-5测试

@MicronautTest
public record ProductControllerTest(IProductClient iProductClient) {

    @Test
    @DisplayName("Should search the item based on the name")
    void shouldSearchTheItemBasedOnTheName() {
        var value = iProductClient.freeTextSearch("test").blockingGet();
        System.out.println(value);
    }
}

控制器

@Controller("/product")
public class ProductController implements IProductOperation {
    private final IProductManager iProductManager;

    public ProductController(IProductManager iProductManager) {
        this.iProductManager = iProductManager;
    }

    @Override
    public Maybe<List> freeTextSearch(String text) {
        LOG.info("Controller --> Finding all the products");
        return iProductManager.findFreeText(text);
    }
}

当我运行测试时,我得到了一个500 internet服务器错误。我认为当我运行测试时,应用程序也在运行。不确定500内部服务器错误的原因是什么。
任何帮助都将不胜感激

@Get(value = "/search/{text}") 导致问题的原因是什么?。如果是,如何使用声明式客户机解决
服务发现
应用程序.yml

consul:
  client:
    defaultZone: ${CONSUL_HOST:localhost}:${CONSUL_PORT:8500}
    registration:
      enabled: true

应用测试.yml

micronaut:
  server:
    port: -1
consul:
  client:
    registration:
      enabled: false

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题