我們有 2 個測驗環境 qa1 和 qa2。根據我們在運行/除錯配置中定義的內容,我們可以使用 qa1.properties 檔案或 qa2.properties 檔案。我們使用 Java、Selenium 和 IntelliJ IDEA IDE。我在 qa2.properties 檔案中定義了 ENV_NAME=qa2
在每個屬性檔案中,我們定義了 URL。作為 qa1.properties 檔案中的示例,我們將有 LOGIN_URL=https://demo.testing.com/vp-clientlib-v1.php?env=qa1 和 qa2.properties 檔案中的相同 URL,我們將有 LOGIN_URL=https: //demo.testing.com/vp-clientlib-v1.php?env=qa2
如您所見,環境是硬編碼的。我正在嘗試替換 URL 中的 ENV_NAME,但到目前為止還沒有成功。請你幫助我好嗎。
uj5u.com熱心網友回復:
請查看 Apache 配置。它支持變數插值。
如果您想將 ENV_NAME 設定為作業系統環境變數 ENV_NAME=xyz,您的屬性將被寫成
LOGIN_URL=https://demo.testing.com/vp-clientlib-v1.php?env=${env:ENV_NAME}
如果您在屬性檔案中ENV_NAME=xyz設定為屬性,那么您將撰寫
LOGIN_URL=https://demo.testing.com/vp-clientlib-v1.php?env=${ENV_NAME}
除了這個 Apache Configuration 提供了很多其他很酷的東西來靈活的屬性定義。
uj5u.com熱心網友回復:
謝謝@Stefan D。您的回復向我介紹了變數插值,我能夠對其進行進一步研究。
在屬性檔案中簡單添加變數 ENV_NAME=qa2 并沒有幫助我替換 URLS 中的環境名稱。在進一步閱讀時,我了解到不可能替代占位符。標準屬性檔案只是鍵值對。
OscarRyz 的回答幫助我弄清楚如何去做。
如果它可以幫助任何剛接觸編碼世界的人,在加載和讀取屬性檔案的類中,我宣告了 private XProperties configFile = new XProperties();
我為 XProperties 創建了另一個類,并從 GitHub XProperties復制了代碼
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/414953.html
標籤:
