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