2017-02-16 52 views
1

在(多模塊,但不應該在這裏關係)Maven項目中,jqassistant-maven-plugin配置如下:jQAssistant是否以低於POM中配置的嚴重程度靜默刪除約束?

<configuration> 
    <failOnViolations>true</failOnViolations> 
    <severity>crititical</severity> 
    <groups> 
    <group>tests</group> 
    <groups> 
</configuration> 

一些制約組配置是這樣的:

<group id="tests" severity="major"> 
    <includeConstraint refId="rules:TestClassName" /> 
    <includeConstraint refId="rules:TestMethodName" /> 
    <includeConstraint refId="rules:TestClassOrMethodIgnored" /> 
</group> 

運行時(或執行jqassistant:analyze目標)時,tests組的約束條件似乎未被執行 - 或者至少在設置<severity>major時未報告其結果,就像它們一樣。 documentation沒有明確提及這種行爲。

因此:jQAssistant是否靜默地放下嚴重性低於爲Maven插件配置的嚴重性的限制,還是隻隱藏違規?而且 - 是否有辦法讓它甚至違反嚴格性較低的約束條件?

回答

0

約束被執行,但如果嚴重性低於配置的約束,將不會在Maven或命令行控制檯上報告。

文件「jqassistant-report.xml」包含結果並可以轉換爲HTML文檔(例如通過執行Maven目標jqassistant:report)。

順便說一句:下一個版本將提供棄用選項「嚴重性」和「failInViolations」,並用「warnOnSeverity」和「failOnSeverity」替代它們,這將使行爲更加清晰。