2013-04-22 64 views
1

我今天剛剛開始使用Maven,所以我的速度還在不斷加快。我已成立了一個Selenium測試在Eclipse中,在我的測試我有baseUrl = System.getProperty("webdriver.base.url");systemProperties in a external file?

我然後運行通過命令行傳遞我想要的參數測試的基本URL是

mvn clean test -Dwebdriver.base.url=http://www.google.com

我的問題是我正在做一個測試,我需要傳遞很多參數,並且更喜歡我是否可以從屬性文件中讀取它們,而不是使用大量的命令行參數。

這是可能的,任何人都可以指向我的教程,所以我可以設置它?

我已閱讀了有關mojo屬性的maven插件,我已將它添加到我的pom.xml中,但我至今尚未得到它的工作。

+0

能否請您澄清你的問題 - 你想從你的Java代碼中讀取屬性,還是試圖讓Maven在運行測試時設置屬性(即通過在一組屬性中自動執行'-Dprop = val')? – 2013-04-23 02:38:47

回答

1

把性質src/test/resources文件從測試類閱讀它作爲資源

InputStream in = YourTestClass.class.getClassLoader().getResourceAsStream("some.properties"); 
Properties properties = new Properties(); 
properties.load(in); 
// access key values 
properties.getProperty("someKey") 

注:這不處理異常,你需要做的是對自己的

+0

對不起,我錯過了一些重要的信息!我需要(或者認爲我需要)在Maven命令行上傳遞屬性文件的原因是我將在不同站點上運行一組Selenium測試,因此我將爲每個站點都有一個屬性文件。 – 2013-04-23 07:13:03

+0

因此,通過一個將標識該站點的唯一屬性文件的參數 – 2013-04-23 07:17:35