Тест Camel Route не отображается в инструменте покрытия кода / плагине - PullRequest
0 голосов
/ 20 января 2020

Я написал тестовый пример для своих маршрутов, как описано unit-testing-with- apache -camel . см. раздел / пункт 4. Он проверяет маршруты с помощью насмешек. Наш проект использует плагин EclEmma Java code cover 3.1.2 в eclipse для измерения покрытия кода. Моя проблема заключается в том, как я убедил этот плагин включить эти фиктивные тестовые маршруты в покрытие кода. В настоящее время его вообще не рассматривают?

У нас есть пакет: com.company.myapp.routes, и я создал пакет com.company.myapp.routes.mock и написал там макеты для всех маршрутов в предыдущем пакете. И затем в моем com.company.myapp.test.routes я имею в виду эти насмешки и использую их, как описано выше по ссылке.

Инструмент покрытия кода показывает покрытие для моего com.company.myapp.routes.mock (макет пакета) как 100%, но 0% для пакета com.company.myapp.routes.

Скопируйте и вставьте соответствующую часть из ссылки:

public class SampleMockRoute extends RouteBuilder {
    public void configure() throws Exception {
        from("direct:sampleInput")
                .log("Received Message is ${body} and Headers are ${headers}")
                .to("mock:output");
    }
}

public class SampleMockRouteTest extends CamelTestSupport {
    @Override
    public RoutesBuilder createRouteBuilder() throws Exception {
        return new SampleMockRoute();
    }
    @Test
    public void sampleMockTest() throws InterruptedException {
        String expected="Hello";
        /**
         * Producer Template.
         */
        MockEndpoint mock = getMockEndpoint("mock:output");
        mock.expectedBodiesReceived(expected);
        String input="Hello";
        template.sendBody("direct:sampleInput",input );
        assertMockEndpointsSatisfied();
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...