2016-11-25 88 views
0

我想在使用dbfit的fitnesse上測試不同環境中存在的表上的不同查詢。每個環境都有不同的連接字符串。因此,不要爲每個環境創建多個頁面(這又是一個單調乏味的任務,因爲每次查詢中的單個更改都可能導致所有測試頁面發生更改),我想將連接字符串存儲在單個文件中(可能是文本或Excel表格),並根據需要從中讀取連接字符串。如何從fitnesse中的文件讀取連接字符串?

任何人都可以幫助我瞭解如何進行?

+2

嗨Akshya,歡迎來到堆棧溢出! :)當你發佈問題時,發佈你已有的內容會非常有幫助。這樣,這個人幫助你看到你已經擁有的東西變得更容易。 – Shrayas

+0

您是否考慮過通過'!define'(http://fitnesse.org/FitNesse.UserGuide.FitNesseWiki.MarkupLanguageReference.MarkupVariables)使用變量來存儲連接字符串?然後,您可以有一個套件來定義要測試的內容,並通過「符號鏈接」(http://fitnesse.org/FitNesse.UserGuide.FitNesseWiki.SymbolicLinks)引用該套件以在每個環境中創建一個套件。那麼你就可以得到兩全其美的好處:通過選擇要運行的套件來單獨定義哪些查詢以及在不同環境中執行的能力。 –

+0

Dbfit允許您將連接字符串保存在文件中 - 請參閱http://dbfit.github.io/dbfit/docs/reference.html中的「使用文件連接」 –

回答

0

我不確定以下是否完全符合您的要求,但我對每個數據庫都有自己的「配置」頁面。然後,我只是include配置頁在每個測試頁:

!include -c .DbFitSetup.UseDbX 

您可以簡單地通過包括新配置,下面的例子演示了測試過程中切換數據庫:

[email protected]:~/test/FitNesseRoot$ cat DbFitSetup/UseDbX/content.txt 
!path lib/*.jar 
!|dbfit.OracleTest| 
!|Connect|dbx.example.com:1531|<username>|<password>|dbx| 
[email protected]:~/test/FitNesseRoot$ cat DbFitSetup/UseDbY/content.txt 
!path lib/*.jar 
!|dbfit.OracleTest| 
!|Connect|dby.example.com:1531|<username>|<password>|dby| 
[email protected]:~/test/FitNesseRoot$ cat ExampleTestSuite/ExampleTest/content.txt 
!include -c .DbFitSetup.UseDbX 

!|inspect query|select sysdate, global_name as db_name from global_name| 

!include -c .DbFitSetup.UseDbY 

!|inspect query|select sysdate, global_name as db_name from global_name| 
[email protected]:~/test/FitNesseRoot$ 
相關問題