2013-08-28 40 views
0

我有一個soapUI 4.5.2項目,我使用Maven 3.0.5通過IntelliJ 12運行。這實際上效果很好。所有的測試運行,我有我的POM文件配置爲寫日誌文件到我想要的地方。我遇到的問題是這個。 soapUI正在向控制檯寫入大量數據,而且我似乎無法修剪它。我已經嘗試過我自己的log4j設置:soapUI和來自IntelliJ的Maven

# Print info for the root logger 
log4j.rootLogger=ERROR, stdout 
log4j.logger.httpclient.wire.header=ERROR 
log4j.logger.httpclient.wire.content=ERROR 
log4j.logger.org.apache.commons.httpclient=ERROR 
log4j.appender.stdout=org.apache.log4j.ConsoleAppender 
log4j.appender.stdout.Target=System.out 
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 

# Print the date in ISO 8601 format 
log4j.appender.stdout.layout.ConversionPattern=%d [%t] %-5p %c - %m%n 

但是soapUI/Maven仍然產生調試輸出到控制檯。例如:

09:47:44096 DEBUG [SoapUIMultiThreadedHttpConnectionManager $ SoapUIDefaultClientConnection]發送請求:PUT /模板/ XYZ/HTTP/1.1 09:47:44722 DEBUG [SoapUIMultiThreadedHttpConnectionManager $ SoapUIDefaultClientConnection]接收響應:HTTP/1.1 200 OK 09:47:44,732 DEBUG [SoapUIMultiThreadedHttpConnectionManager $ SoapUIDefaultClientConnection]連接關閉

我編輯了soapui-log4j.xml文件,只打印錯誤但沒有幫助。這可能是因爲我有正確的編輯,但我不知道如何告訴Maven/soapUI使用IntellIj中我的pom文件中的這個文件。有關如何停止所有控制檯輸出的任何想法?

這裏是我的POM文件:

<groupId>com.xyz.soapui</groupId> 
<artifactId>apitesting</artifactId> 
<version>1.0-SNAPSHOT</version> 
<packaging>pom</packaging> 

<name>apitesting</name> 
<url>http://maven.apache.org</url> 

<prerequisites> 
    <maven>3.0.5</maven> 
</prerequisites> 

<properties> 
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
</properties> 

<dependencies> 
    <dependency> 
     <groupId>junit</groupId> 
     <artifactId>junit</artifactId> 
     <version>4.11</version> 
     <scope>test</scope> 
    </dependency> 
    <dependency> 
     <groupId>log4j</groupId> 
     <artifactId>log4j</artifactId> 
     <version>1.2.17</version> 
    </dependency> 
</dependencies> 

<pluginRepositories> 
    <pluginRepository> 
     <id>eviwarePluginRepository</id> 
     <url>http://www.eviware.com/repository/maven2/</url> 
    </pluginRepository> 
    <pluginRepository> 
     <id>mvnPluginRepository</id> 
     <url>http://mirrors.ibiblio.org/pub/mirrors/maven/mule/dependencies/maven2/</url> 
    </pluginRepository> 
    <pluginRepository> 
     <id>codehausPluginRepository</id> 
     <url>https://nexus.codehaus.org/content/groups/snapshots-group/org/codehaus/mojo/</url> 
    </pluginRepository> 
</pluginRepositories> 

<build> 
    <sourceDirectory>src</sourceDirectory> 
    <plugins> 
     <plugin> 
      <artifactId>maven-compiler-plugin</artifactId> 
      <version>3.1</version> 
      <configuration> 
       <source>1.7</source> 
       <target>1.7</target> 
      </configuration> 
     </plugin> 
     <plugin> 
      <groupId>com.github.redfish4ktc.soapui</groupId> 
      <artifactId>maven-soapui-extension-plugin</artifactId> 
      <version>4.5.1.4</version> 
      <dependencies> 
       <dependency> 
        <groupId>postgresql</groupId> 
        <artifactId>postgresql</artifactId> 
        <version>9.1-901.jdbc4</version> 
       </dependency> 
       <dependency> 
        <groupId>com.jgoodies</groupId> 
        <artifactId>looks</artifactId> 
        <version>2.2.2</version> 
       </dependency> 
       <dependency> 
        <groupId>com.fifesoft</groupId> 
        <artifactId>rsyntaxtextarea</artifactId> 
        <version>2.0.7</version> 
       </dependency> 
      </dependencies> 
      <configuration> 
       <runnerType>PRO</runnerType> 
       <projectFile>${basedir}/src/test/resources/apitesting-soapui-project.xml</projectFile> 
       <outputFolder>${project.build.directory}/soapui-reports</outputFolder> 
       <exportAll>true</exportAll> 
       <reportFormat>HTML</reportFormat> 
       <coverage>false</coverage> 
       <printReport>true</printReport> 
       <junitReport>true</junitReport> 
       <testFailIgnore>true</testFailIgnore> 
       <settingsFile>/home/xyz/soapui-settings.xml</settingsFile> 
       <projectProperties> 
        <value>pmessage=Project Property</value> 
       </projectProperties> 
       <globalProperties> 
        <value>gmessage=Global Property</value> 
       </globalProperties> 
       <soapuiProperties> 
        <property> 
         <name>soapui.logroot</name> 
         <value>${project.build.directory}/soapui-logs/</value> 
        </property> 
       </soapuiProperties> 
       <inputProject/> 
       <outputProject/> 
      </configuration> 
     </plugin> 
    </plugins> 
</build> 

謝謝!

+0

是你的log4j config文件名爲'soapui-log4j.xml'並位於projectBaseDir? – ben75

+0

好的!我已經將我的soapui-log4j.xml文件移動到projectBaseDir,並且似乎工作。以下是一些輸出:從[/home/xyz/Documents/Source/xyzapitesting/soapui-log4j.xml]配置log4j。有沒有辦法也可以忽略由java.lang.NullPointerException引發的偶爾堆棧跟蹤?這發生在soapUI關閉連接之後。 – cbohannon

回答

1

根據plugin doc可以覆蓋log4j的配置爲的soapUI:

您還可以通過在項目的基本目錄提供「的soapUI-的log4j.xml」文件覆蓋默認日誌配置。這與smartbear插件(開源和專業版)和maven-soapui-extension-plugin一起工作。

所以一定要使用正確的文件名,位置和格式(XML ...但它也可以用'soapui-log4j.properties的工作:我沒有嘗試)

+0

將soapui-log4j.xml添加到projectBaseDir中可以讓我擺脫困境。謝謝!拼寫正確也有助於...... :) – cbohannon