我想在JUnit
測試中顯示警告。我不希望測試因該警告而失敗,但我想知道發生了警告。顯然,我可以使用System.err.print
或類似的東西。現在我不知道什麼是正確的方式與控制檯的appender做JUnit測試中的警告
7
A
回答
5
我也曾認爲這有時會有用,但這是不能做到的。 JUnit堅持正確和錯誤的答案,因此只有「成功」,「失敗」和「錯誤」。運行測試時代碼在代碼中出現故障時出錯。我會重構並考慮是否真的需要警告(或者像之前回答建議的日誌,儘管我認爲此警告很快會丟失),
+0
可能使用TestSuite.warning(String),儘管該欄仍然是紅色的。 –
4
使用記錄它
final Logger logger = LoggerFactory.getLogger(LoggingTest.class);
@Test
public void test() {
logger.warn("message");
}
PS。使用slf4j記錄器的示例。
2
您可以針對您的測試使用log4j配置。
第1步:創建一個文件src/test/resources/test-log4j.properties,其中包含測試的log4j配置。
實施例:
log4j.rootLogger=DEBUG, R
log4j.appender.R=org.apache.log4j.ConsoleAppender
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{3}:%L - %m%n
步驟2:編輯你的pom.xml類似如下:
<build>
...
<plugins>
<plugin>
<artifactid>maven-surefire-plugin</artifactid>
<version>2.3</version>
<configuration>
<systemproperties>
<property>
<!-- Specific log4j config for tests -->
<name>log4j.configuration</name>
<value>test-log4j.properties</value>
</property>
</systemproperties>
</configuration>
</plugin>
...
</plugins>
</build>
現在你的log4j.properties位於SRC /主/ web應用/ WEB-INF /類/
希望這會有所幫助。
相關問題
- 1. Apache Camel JUnit測試警告
- 2. 警告測試
- 3. 在JUnit測試中抑制編譯器警告
- 4. 的Android測試「ro.build.date.utc」警告
- 5. Junit報告:在另一個Junit測試中稱爲Junit測試,不是報告的一部分
- 6. 取消測試(帶警告)
- 7. Vuelidate警告噶/柴測試
- 8. 的JUnit:測試
- 9. 測試用例出的順序JUnit測試報告用TestNG時
- 10. JUnit測試與Cobertura覆蓋率報告
- 11. 在Sonar上發佈JUnit測試報告
- 12. Redux警告只出現在測試中
- 13. JUNIT:從Junit測試生成可導出的報告
- 14. 報告忽略測試,並在JUnit中獲取實時報告?
- 15. Objective - C的連接測試警告
- 16. 測試執行期間的Vue警告
- 17. JUnit測試中的java.util.ConcurrentModificationException
- 18. GWT NetBeans中的JUnit測試
- 19. Android的JUnit測試中Robotium
- 20. Android中的JUnit測試 - DialogFragment
- 21. 如何測試junit測試
- 22. Maven.surefire.util.SurefireReflectionException當測試Junit測試
- 23. Hangman JUnit測試
- 24. spring junit測試
- 25. RxJava2 JUnit測試
- 26. 春JUnit測試
- 27. JUnit測試AspectJ
- 28. JUnit測試後
- 29. Java JUnit測試
- 30. FragmentActivity Junit測試
這取決於您想要顯示的警告的位置?安慰?測試輸出報告一般? – fge