Шаги SoapUI перезаписывают настройки log4j

У меня есть установка, в которой я запускаю тесты JBehave во время сборки Maven.

Шаги тестирования включают отправку запросов в веб-службу с помощью классов Java SoapUI.

Все работает нормально, по тесту. Моя проблема в том, что часть прогресса SoapUI, похоже, перезаписывает настройки log4j, поэтому последующие вызовы журнала не печатаются на консоли (ни в файлах).

Я пробовал обходной путь, когда я звоню

    ClassLoader loader = this.getClass().getClassLoader();
    URL resource = loader.getResource("log4j.xml");
    PropertyConfigurator.configure(resource);

попытаться сбросить конфигурацию на исходную, но пока безуспешно.

Log4j (1.2) и SoapUI (4.5.1) используют простые настройки в pom. Регистратор создается как protected final Log log = LogFactory.getLog(getClass());

Вывод консоли я получаю следующим образом:

    pool-1-thread-1 16:36:08,212 DEBUG ästeps.LoginSteps:25 - logging in user: testfir
    pool-1-thread-1 16:36:08,213 DEBUG äpages.LoginPage:26 - Create LoginPage
    pool-1-thread-1 16:36:08,985 DEBUG äpages.LoginPage:38 - login user: testfir
    pool-1-thread-1 16:36:10,343 DEBUG äpages.WorkspacePage:36 - creating WorkspacePage
    Givet user testfir has logged in
    16:36:11,634 WARN  [SoapUI] Missing folder [D:\proj\src\test\functional-tests\.\ext] for external libraries
    16:36:11,809 INFO  [DefaultSoapUICore] initialized soapui-settings from [C:\Users\xxx\soapui-settings.xml]
    16:36:12,176 INFO  [WsdlProject] Loaded project from [file:/D:/proj/src/test/functional-tests/src/test/resources/ReceiveCase-soapui.xml]
    16:36:12,640 DEBUG [HttpClientSupport$SoapUIHttpClient] Attempt 1 to execute request
    16:36:12,640 DEBUG [SoapUIMultiThreadedHttpConnectionManager$SoapUIDefaultClientConnection] Sending request: POST /soa-infra/services/default/ReceiveCases/ReceiveCase_v1_0_ep HTTP/1.1
    16:36:13,841 DEBUG [SoapUIMultiThreadedHttpConnectionManager$SoapUIDefaultClientConnection] Receiving response: HTTP/1.1 200 OK
    16:36:13,842 DEBUG [HttpClientSupport$SoapUIHttpClient] Connection can be kept alive indefinitely
    And a case exists
    When case is choosen
    16:36:46,832 DEBUG [SoapUIMultiThreadedHttpConnectionManager$SoapUIDefaultClientConnection] Connection closed
    Then the details are displyed

И я ожидаю вывод журнала с

Установка идентификатора дела на: 123456

так же, как «Создать страницу входа».

Не могу понять, почему это так и что делать, чтобы мои записи в журнале отображались. Есть идеи?

С уважением, Кристиан


person Christian Karlsson    schedule 16.01.2013    source источник


Ответы (1)


Удалось найти корень проблемы. Именно Maven исказил кодировку файла. Добавление

    <configuration>
      <encoding>UTF-8</encoding>
      <inputEncoding>UTF-8</inputEncoding>
      <outputEncoding>UTF-8</outputEncoding>
      <argLine>-Dfile.encoding=UTF-8</argLine>
    </configuration>

часть maven-surefire-plugin в файле pom решила мою проблему.

/Ваше здоровье

person Christian Karlsson    schedule 23.01.2013