2012-08-07 68 views
1

我們希望創建特定於在服務器中激發請求的用戶的測試報告。如果我們改變POM這樣使用maven命令運行測試時傳遞用戶名

<configuration> 
    <outputDirectory>${basedir}/target/${user.name}</outputDirectory> 
</configuration> 


這產生了服務器,而不是誰開的測試個人的用戶名。我看到了一個可能的解決方案,如mvn surefire-report:report -DoutputDirectory=newpath。但想知道,我們如何通過命令提示符傳遞用戶名。


任何指導將非常感激。

回答

1

在你的POM文件創建一個屬性:

<pom> 
    ... 
    <properties> 
     <some.propertyName></some.propertyName> 
    </properties> 
    ... 
    <configuration> 
     <outputDirectory>${basedir}/target/${some.propertyName}</outputDirectory> 
    </configuration> 
</pom> 

然後你使用這樣的:

mvn surefire-report:report -Dsome.propertyName=DonaldDuck 
+0

非常感謝你。 – arin 2012-08-07 12:18:43

+0

以上答案完美地工作,並用我的用戶名創建相應的導演。在進一步測試之後,我又來了另一個複雜性。 – arin 2012-08-08 06:02:35

+0

以上答案完美工作,並用我的用戶名創建相應的導演。在進一步測試之後,我又來了另一個複雜性。如果有人想運行任何未安裝Maven的測試,我們希望得到來自該用戶的HTTP請求,並在服務器中觸發相應的maven命令。爲了做到這一點,我認爲,我們需要一個能夠使用maven命令運行測試的地方,我們不需要依賴POM中定義的屬性,而是使用系統屬性。請求可能像mvn -Dtest = *。java -DoutputDirectory = 。有什麼想法嗎? – arin 2012-08-08 06:09:22

相關問題