2009-04-23 102 views
2

我正在尋找一個測試框架來覆蓋我們的黑盒集成測試。我們需要非開發人員可以編寫腳本的東西(又稱不是C#單元測試類型的東西)。集成測試框架?

最初的情景我想到的是:

  1. 還原稱爲DB
  2. 運行SQL代理作業(ETL)
  3. 對輸出DB

執行驗證SQL腳本
  1. 運行msi install
  2. 檢查文件夾/文件/ REGKEYS /服務的所有腦幹的/ etc
  3. 運行MSI卸載

到目前爲止,我沒有發現任何東西,似乎配件。主要是UI測試(項目白/等),我們將使用但不包括這些情況。或者基於單元測試框架的集成測試,我們還沒有準備好將我們的QA團隊推向未來。

我目前正在試驗如果我找不到其他東西,我們自己的內部測試工具。

回答

4

它看起來像你想運行一堆命令行參數,對吧?

嗯,我看到兩種方法可以做到這一點:

1),你可以發明自己的領域特定語言。這是一種說法,你寫了一些非常非常高級的函數的解釋器的奇特方式。非技術人員編寫諸如批處理文件之類的東西,然後編寫一些C#讀取文件,執行switch語句,然後運行這些命令。 FIT可能是最常見的方法 - 這是集成測試的框架。 (這樣做的方法是用逗號分隔所有東西:command,param1,param2,假設它是一個非常簡單的彙編程序,然後你的switch語句取param1..paramx並將它們粘貼到一個字符串數組中,並將它傳遞給函數。該功能處理陣列。)

問題在於您的客戶需要變量。他們會想要循環。很快,您已經實現了一個都靈完整的編程解釋器,它以columner格式讀取數據。臭死了。

,所以你可以...

2)教你的客戶的腳本語言。我會研究Perl和測試::更多 - 或者可能是一些紅寶石測試的東西。

如果不工作,也許你能...

3)放棄對具有客戶創造所有的測試。取而代之的是,讓一個工具製造商與客戶配對來創建輪廓,然後返回並將其轉換爲代碼。

如果您駕駛的是瀏覽器,我推薦使用selenium或watIR,但它看起來像是命令行-y。

給我發一封電子郵件([email protected])或閱讀我的博客(xndev.blogspot.com)上有關測試框架的更多信息。我的博客是問谷歌什麼是測試框架的#2搜索結果,所以我很樂意推薦它。 :-)

問候,

--heusser不僅僅是一堆命令行PARAM東西

+0

更多。不基於網絡。 我走了一半#1內部工具。 XML定義文件,簡單的屬性和幾個容器類型的測試列表(全部,沒有,必須通過)。 您的#2/3中的「客戶」是我們的質量保證團隊。我沒有時間讓自己再次用Perl/Ruby來加速,也沒有教過其他任何人,更不用說向他們推出工具了。我想將它們轉向基於代碼的測試,但我現在需要一個橋接工具。 接受,因爲沒有其他答案,它確認沒有其他工具了。 – 2009-05-21 07:21:45