推薦這個blog:

Award


(ASP.NET 2010、2011、2012年)

其他資源

簡體中文blog

最新回應

[Visual Studio]測試專案的分類

前言
在之前的文章:
[測試]自動化測試經驗分享- MS TechDays 2011 BoF內容有提到,自動化測試常犯的錯誤:

龜速測試
單元測試專案與整合測試專案沒有分開。單元測試應該在任何環境底下(包括沒有資料庫、沒有網路等情況…)可以獨立且迅速運行。整合測試因為會需要外界的service,資料,檔案等等資源的存取,還外加需要初始化與還原環境跟資料,所以相當耗時。


這邊針對的是在CI的環境上,做自動測試時,應該將單元測試專案與整合測試專案分開,單元測試專案會放在auto-build的trigger裡面,每一次的checkin,跟著auto-build來一起執行,因為執行速度快,而且執行結果一翻兩瞪眼,可以在最快的週期裡面,知道這一次的checkin是否有造成非預期的錯誤。

而這一篇文章要提的,則是for developer在日常開發過程中,自己撰寫整合測試與單元測試的程式碼時,如何分開測試。

如何分開
先來看在測試的選項中,有什麼可以選?

options

是的,只有『目前內容中的測試』、『整個方案中的所有測試』跟『所有受影響的測試』…而我們的需求是『我在開發中只想快速的測試單元測試專案裡面的單元測試程式碼,最後要checkin之前,再檢查全部的測試結果。』

舉個例子,現在我的專案有130個測試案例:

TotalTestCases 

即使按照專案排序,也無法只執行選取的測試方法。

為了這問題,我還上去MSDN forum發問:
如何將單元測試專案與整合測試專案分開執行?,感謝程湘之間大哥提供的解答,讓我至少可以手動的選擇我只要測試某個專案。

透過『測試=>視窗=>測試檢視』,開啟測試檢視視窗,

image

image

僅測試『單元測試專案』的結果
image

結論
如果你的單元測試跑的特別的慢,請確認是否測試的功能有與外部服務相依。也請務必將整合測試與單元測試專案拆開。只有快速、獨立的測試,才能讓developer維持對單元測試的熱忱。至於怎麼寫到與外部服務獨立,那就是developer自己應該做的功課。


點部落-In Joey

↑ Grab this Headline Animator


關連文章

[Tool]如何透過工具叫用與測試WCF的服務 - WcfTestClient

[Tool]相似度分析- Simian簡介

[ASP.NET]在server端post資料到.ashx

[.NET]Entity與DataTable互轉

回應

  • # re: [Visual Studio]測試專案的分類 by franma

    寫 UT 才是程式人員測試的方法呀!(握)

    2011/12/13 上午 10:36 | 回覆

  • # re: [Visual Studio]測試專案的分類 by 91

    to franma :

    那還用說,當然啦!!

    我會緊跟著肥馬哥的腳步的!

    推廣測試 & 軟工,不遺餘力!
     

    2011/12/13 上午 10:52 | 回覆

  • # re: [Visual Studio]測試專案的分類 by 天空中的魚

    版大 請問一下 我在專案裡建好一個單元測試後,下次再開啟此專案時,都至少要花五分鐘以上時間才能把專案開起來,請問有遇過類似的問題嗎

    2012/4/26 下午 07:08 | 回覆

  • # re: [Visual Studio]測試專案的分類 by 91

    to 天空中的魚 :

    沒有遇過耶,恢復預設值/更新SP1/修復Visual Studio看看吧。
     

    2012/4/26 下午 08:41 | 回覆

  • # re: [Visual Studio]測試專案的分類 by 天空中的魚

    謝謝版大 不過應該不是VS壞掉的問題,因為還未建單元測試前開啟專案都是正常速度,是建了單元測試後才發生,且看它載入的訊息是卡在單元測試專案那部份,而且我同事也是如此,謝謝。

    2012/4/27 上午 10:12 | 回覆

  • # re: [Visual Studio]測試專案的分類 by 91

    to 天空中的魚 :
    我用過VS2005, VS2008, VS2010的測試,都沒有碰到您說的問題。

    您有試著下載我blog上有附單元測試的sample code嗎?抓回去開起來試試看。

    2012/4/27 上午 10:18 | 回覆

  • # re: [Visual Studio]測試專案的分類 by 天空中的魚

    版大 大概知道原因了,只是如何解還不知道,原因是我們單元測試時有產生事件的測試,這時測試專案底下會產生一個資料夾"測試參考"裡面有一個檔案 XXX.accessor,不知為什麼會導致重開專案時變慢,當程式少時開啟的速度還能接受,但當程式很多時就要開很久了。

    2012/4/27 下午 01:38 | 回覆

登入後使用進階評論

Please add 8 and 7 and type the answer here: