2012-06-10 30 views
2

有沒有基於網絡的測試運行器;從網站運行網站的單元測試?針對ASP.net的基於Web的NUnit測試運行器?


我知道這是觸犯運行一些人的教條,但我希望能夠run unit tests from inside the product i'm testing。無論是從the native Win32 executable還是從a .NET executable以內。

一個人已經寫了a web-based AJAX test runnerUnitTest++

在過去我不得不拆分NUnit,所以我可以測試嵌入在可執行文件中,而不必運送NUnit dll。這要求我也爲Windows/WinForms編寫我自己的圖形測試運行程序。

有沒有人已經完成了爲ASP.net創建可運行單元測試的工作?


注意:人們通常的反應:「單元測試不應該在最終產品中,絕對不允許通過測試,支持,或開發者訪問,現場的時候。」


注意:您可以與我的願望,運行單元測試不同意,但不要讓這些影響你的答案。如果沒有基於web的nunit測試亞軍的話,那就是答案。不要害怕回答這個問題。我不會咬人。

+0

你可以發佈你爲什麼要這樣做的原因。 – Jupaol

+0

@Jupaol因此,我可以運行單元測試,而無需將Visual Studio切換到不同的項目。所以我可以運行單元測試而不必進入Visual Studio。所以我可以在客戶的測試系統上安裝後運行單元測試。所以我可以在客戶現場系統安裝後運行單元測試。 –

回答

2

我想原因,你想要做這種事情是因爲缺乏一個Continuous Integration server的,我想不出其他的理由,所以不是試圖補丁設計通過這樣做,那將是更清潔如果你評估一個CI服務器的實現(這並不難,例如你可以看看:NCastor

所以我認爲你需要的是建立一個持續集成服務器以運行單元測試和集成測試會自動作爲自動構建過程的一部分。

你會被部署應用程序到下一個「舞臺」 在構建過程和測試是有效的,也可以配置CI服務器執行:

  • 運行測試
  • 運行靜態分析
  • 運行非靜力分析
  • 生成測試的報告
  • 運行測試與測試覆蓋率
  • 計算並設置應用程序版本
  • 創建應用程序
  • 的包根據目標階段修改配置文件
  • 縮小你的腳本
  • 發送電子郵件時,構建失敗

除其他

正如您所提到的,您不需要將測試部署到生產服務器

我強烈建議你閱讀下一篇文章:

http://misko.hevery.com/2008/07/16/top-10-things-i-do-on-every-project/

這是一些CI服務器

  • Jenkins列表 - 免費&易於配置
  • Hudson - 免費&易於配置
  • TeamCity - 免費開源項目
  • Cruise Control - 免費(然而,這在普及降低,因爲配置只能通過XML文件,這很煩人...)