首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >spring boot测试和嵌入式弹性服务器

spring boot测试和嵌入式弹性服务器
EN

Stack Overflow用户
提问于 2019-04-12 02:05:28
回答 2查看 429关注 0票数 1

文档说编写@SpringbootTest并不意味着我们加载了所有的配置

我们应该能够一次测试一段应用程序

我有一个案例,其中一个模块与elastic search对话,我们在集成测试中启动EmbeddedElasticsearchServer

然而,我很难弄清楚如何定义@Configuration类,如何在测试中加载它们,以及如何确保elasticsearch服务器为所有测试启动一次

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-04-18 09:05:55

我不确定@SpringBootTest。但是您可以将以下模板用于elasticsearch Integration est和embeddedserver

v7.0.0

代码语言:javascript
复制
@ESIntegTestCase.ClusterScope(scope = ESIntegTestCase.Scope.SUITE, numDataNodes = 1, numClientNodes = 0, transportClientRatio = 0, supportsDedicatedMasters = false)
@RunWith(com.carrotsearch.randomizedtesting.RandomizedRunner.class)
public class TestWatsonBulkIT extends ESIntegTestCase {
  @Override
protected boolean addMockHttpTransport() {
    return false;
}
    @Override
protected Settings nodeSettings(int nodeOrdinal) {
    Settings.Builder builder = Settings.builder()
            .put(super.nodeSettings(nodeOrdinal))
            .put(NetworkModule.TRANSPORT_TYPE_KEY, Netty4Plugin.NETTY_HTTP_TRANSPORT_NAME)
            .put(NetworkModule.HTTP_TYPE_KEY, Netty4Plugin.NETTY_HTTP_TRANSPORT_NAME)
            .put(HttpTransportSettings.SETTING_HTTP_PORT.getKey(), 9200)
            .put(HttpTransportSettings.SETTING_HTTP_HOST.getKey(),"127.0.0.1");
    Settings settings = builder.build();
    return settings;
}
@Before
public void setUp() throws Exception {
    beforeClass();
    super.setUp();
}
@Test
public void test_1(){ // your integration test code here }
}
票数 1
EN

Stack Overflow用户

发布于 2019-04-12 03:27:05

我们应该能够一次测试一段应用程序

这可以通过在@SpringBootTest注释中提供类来实现。我通常选择这个选项,这样就不会加载所有内容。比方说,

控制器: SampleController -> ConsumerService (自动连接)

测试

代码语言:javascript
复制
@RunWith(SpringRunner.class)
@SpringBootTest(classes = {ConsumerService.class, SampleController.class})
public class TestSample {

    @Autowired
    SampleController sam;

    @Test
    public void testSam() {
        sam.sample();
    }

}

我确实有一堆服务,但它们不会被加载,所以它们的依赖关系是自动连接的。

如果这不是您要找的,请通过添加一些示例代码来增强您的问题。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55638712

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档