軟在昨天正式發布了Visual Studio 2010 Beta 2(內部開發代號 Dev10),同時也宣布了正式版本的發布日期為2010年3月22日,也就是春節后啊!MSDN訂閱用戶可以在今天開始下載Beta 2,其它用戶則要到美國時間10/21號才能下載,也就是我們中國時間22號。我很高興能夠馬上就用上Beta 2版本的Visual Studio 2010,與Beta 1相比變化還是不小的,先不說功能上有啥變化,僅Logo的變化就讓人小吃了一驚。一改使用了十幾年的“紅綠藍黃”,采用了全新的“紫藍”Logo,乍一看還挺不適應的,畢竟用了VS十多年,對老Logo還是有感情的,呵呵!
圖1 老Logo,再懷念一下!
圖2 新VS Logo
圖3 新MSDN Logo
有關VS 2010 Beta 2的下載、安裝和新功能特性等方面的信息,可以訪問 http://msdn.microsoft.com/en-us/vstudio/dd582936.aspx ,這里就不再多說了,作為一個測試人員,俺更關心的是它在測試方面的內容。
對于測試人員而言,VS 2010 帶來了更多嶄新的功能,這些新功能貫穿了整個測試周期 : 測試計劃、測試執行和測試執行進度跟蹤。雖然VS 2010 RTM還不是正式版,但是從微軟發布的Beta 2我們也可以體驗一下這些新的功能。 根據以往微軟的開發流程和習慣,Beta 2和最終的RTM版應該是八九不離十的。VS 2010 引入了一個全新的工具,稱作“微軟測試與實驗室管理器” (Microsoft Test and Lab Manager, MTLM),MTLM是一個單獨運行的工具 (內部開發代號“Camano”),用于創建測試計劃、管理測試用例、運行測試用例以及測試結果管理等。
圖4 MTLM測試管理工具
在安裝VS 2010套件的時候會一起安裝上,其界面還是很漂亮的,不像是傳統的WinForm程序,應該是完全用WPF編寫的。MTLM是單獨運行的一個工具,運行它不需要啟動Visual Studio IDE。也許很多人會問:為什么不把它集成到VS IDE中,而是作為一單獨的程序呢?我能夠想到的答案是:測試和實驗室的管理的功能相對比較獨立,作為一個單獨工具使用會更輕便。如果只是用來管理實驗室或者執行測試用例,就可以只安裝這個工具,在安裝界面中可以選擇只安裝MTLM工具吧?——有待下次安裝時確認。
我在自己的機器上安裝了MTLM,第一次運行了這個工具后才發現,MTLM僅是一個測試和實驗室管理功能的客戶端,也就是個“配角兒”,真正的“主角兒”原來是Team Foundation Server(TFS)服務器,更確切的講應該是TFS 2010 Beta 2。MTLM是完全依賴于TFS的,它運行起來的第一個界面就是要你去連接指定的TFS服務器,否則也就到此為止,寸步難行了。我們知道,TFS是微軟的軟件開發生命周期管理(ALM)套件的核心服務器端,將MTLM與它進行緊密綁定更進一步凸顯了微軟軟件生命周期管理軟件的戰略,這其實從VS 2005和2008就已經逐步開始了,2010更進一強化了這戰略。VS不再單單只是面向開發人員或者是測試人員角色,而是要提供一個平臺來有效協調和支持開發過程中各個角色,并使他們能夠彼此緊密聯系進行協作。就象早在VS 2008中就已經支持Excel和Project和TFS連接一樣,這也是趨勢,設想以后很可能所有和軟件開發過程相關的工具都會與TFS綁定。在學習的過程中總有很多細小的問題和發現無處歸類留作備忘,用這種Q&A的方式的蠻好的,不用寫很多東西,隨時有新的發現就隨時寫些東東,比較輕量級,挺好的!在這里列出一些VS 2010測試功能使用中遇到的問題:
問題 1.Microsoft Test and Lab Manager (MTLM)工具能和TFS 2008、2005一起工作嗎?
答:不能。因為測試和實驗管理是服務器端功能,這些功能僅在TFS 2010上支持。
問題 2.MTLM如何對用戶訪問權限進行管理?
答:MTLM沒有單獨的用戶權限管理,它應該是依賴于所連接的TFS工程的用戶權限配置。
問題 3.MTLM所管理的對象是如何在TFS端存儲的呢?
答:Test Plan、Test Suites和Configuration 都是保存在TFS服務器端的數據庫中,而Test Case則是以工作項(Work Item)的形式保存在TFS上的。在TFS 2010的默認工作項類型中,新增加了Test Case類型,就是用來保存Test Case對象的。因為工作項是具有歷史信息記錄和查詢功能,所以Test Case對象的所有歷史更改信息都可以查詢到。而Test Plan、Test Suites和Configuration就不具有歷史查詢功能。
問題 4.什么是Shared Step?
答 :Shared Steps是指共享的測試步驟。每個Test Case是由一系列的測試步驟組成的,每個測試步驟包括要執行的操作以及對操作結果的驗證。有些測試步驟是可以在多個測試用例中所共用的,就可以把它當作Shared Steps,比如說如果我們要從測試VS,第一步總是要啟動VS并確認VS IDE顯示出來了。這樣一個步驟是所有對VS進行測試測試用例都必須要執行的,我們就可以把它創建為Shared Step。TFS 2010的默認工作項類型中,新增加了Shared Step類型,就是用來保存Shared Step對象的。
問題 5.哪里有最新的VS 2010測試功能的文檔?
答:http://msdn.microsoft.com/en-us/library/ms182409(VS.100).aspx,讀好MSDN的文檔是了解好辦法。
問題 6.MTLM里可以“Add requirements”來擴展Test Plan,這里requirement是指啥呢?
答:閱讀MSDN的文檔你會發現,requirement和User Story是可以互換的。實際上Requirement就是User Story,更確切的講就是TFS上的User Story工作項。項目經理在定義好User Story,測試人員可以從User Story直接來創建測試計劃的內容。
如果主角兒只有一位的話,整個VS 2010工具的真正主角以不再是作為編碼工具的VS IDE,而是ALM的核心TFS。很多很多涉及到團隊開發的功能都需要TFS(Team Foundation Server)的支持。
那么TFS到底是干啥的呢?從字面上翻譯就是:Team團隊Foundation基礎Server服務器,更更通順些翻譯就是“團隊協作基礎服務器”,不知道微軟的官方中文翻譯是怎樣的,如果有朋友知道,別忘了告訴一聲。我記得它的第首個版本是出現在VS 2005中,當時看到它的時候,還是非常興奮的,因為總算是可以告別“VSS存代碼,Word記Bug,測試人員通知開發人員產品缺陷靠喊”的“手工++”開發模式。有了TFS,你開發過程中的所有“副產品”—— 需求、任務、缺陷和代碼等都在一個服務器上,彼此可以互聯互通,這感覺真爽啊!
下面的圖描述了在沒有TFS時候的情況,開發過程中的數據都是分別用不同的工具存儲,彼此直接相互獨立成為了信息“孤島”,它們彼此之間的聯系代表了人的行為實現的它們之間的“溝通”。
圖1 TFS溝通方式
原文轉自:http://www.anti-gravitydesign.com