2013-04-11 63 views
11

如何使用其maven插件將命令行參數傳遞給ScalaTest?我一直在尋找類似TestNG的delegateCommandSystemProperties配置,但最近我在ScalaTest documentation發現是:ScalaTest:將命令行參數傳遞給ScalaTest maven目標

  • argLine:選項指定其他JVM選項傳遞給派生進程
  • environmentVariables:其他環境變量傳遞到叉形過程
  • systemProperties:其他系統屬性傳遞給叉形過程

但不是這個冗餘?例如,如果我想通過environment=development,我需要在pom.xml填寫以下信息:

<plugin> 
    <groupId>org.scalatest</groupId> 
    <artifactId>scalatest-maven-plugin</artifactId> 
    <configuration> 
    <argLine>-Denvironment=${env}</argLine> 
    </configuration> 
</plugin> 

,然後運行mvn test -Denv=development。有沒有更簡單的方法直接將命令行參數傳遞給ScalaTest?

+0

近12個月前Upvoted。仍在等待答案。比爾(威納斯)你在外面嗎? – javadba 2015-04-24 23:53:35

回答

5

在pom中沒有必要定義<argLine>。 但它確實不直觀,也沒有很好的文檔記錄,只需要在文檔中添加一個簡單的示例用法。

只需將系統屬性傳遞給maven測試即可:test -Dsuites=com.company.somepackage.SomeSpec "-DargLine=-Denv=env001 -Dgroup=default -DmaxTests=10"

對於environmentVariablessystemProperties - 必須有一個簡單的語法。應該可以從試驗和錯誤中找出數據,或者在任何人感興趣的情況下閱讀源代碼。我的需求argLine就夠了。