日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
詳解VisualStudio2010敏捷測(cè)試驅(qū)動(dòng)開(kāi)發(fā)

本文主要為大家探討的是Visual Studio 2010敏捷測(cè)試驅(qū)動(dòng)開(kāi)發(fā),開(kāi)發(fā)環(huán)境為Visual Studio 2010 Ultimate Beta2版本。希望本文能對(duì)大家有所幫助。

網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)!專注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、微信平臺(tái)小程序開(kāi)發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了瑞金免費(fèi)建站歡迎大家使用!

在微軟Visual Studio 2010 Ultimate Beta2版本中,MSF for Agile Software Development 5.0過(guò)程框架,是以Scrum模型為基礎(chǔ)導(dǎo)向擴(kuò)展,并且結(jié)合了VSTS2010工具的眾多測(cè)試功能特性,為更多的從事微軟.NET技術(shù)相關(guān)的開(kāi)發(fā)人員以實(shí)現(xiàn)高質(zhì)量的軟件產(chǎn)品。

#T#

在本文中,筆者將介紹Visual Studio 2010 Ultimate Beta2版本中的MSF for Agile的Scrum和XP敏捷思想與VSTS2010強(qiáng)大的測(cè)試功能,通過(guò)對(duì)這些內(nèi)容的闡述,讓讀者了解在VSTS2010中的敏捷測(cè)試驅(qū)動(dòng)開(kāi)發(fā)方法,以便于.NET開(kāi)發(fā)人員能把敏捷驅(qū)動(dòng)開(kāi)發(fā)為導(dǎo)向的技術(shù),應(yīng)用在自己的項(xiàng)目和團(tuán)隊(duì)中,從而構(gòu)筑出敏捷的開(kāi)發(fā)團(tuán)隊(duì)。

1.引言

在前幾篇的文章中提到過(guò)的Scrum,相信讀者們都應(yīng)該已經(jīng)不陌生了,它的核心在于迭代,并且以每個(gè)sprint時(shí)間段的周期進(jìn)行產(chǎn)品功能迭代。團(tuán)隊(duì)首先瀏覽開(kāi)發(fā)需求,考慮可用技術(shù),并對(duì)自身技術(shù)及能力做出評(píng)估,所有實(shí)踐就是圍繞著一個(gè)迭代和增量的過(guò)程來(lái)展開(kāi),而在每個(gè)迭代內(nèi)部,可以使用測(cè)試驅(qū)動(dòng)和持續(xù)集成的XP(eXtreme Programming,極限編程)工程實(shí)踐。

XP,是最輕量級(jí)的開(kāi)發(fā)流程,其最主要的精神是“在客戶有系統(tǒng)需求時(shí),給予及時(shí)滿意的可執(zhí)行程序”,所以最適合需求快速變動(dòng)的方案。Scrum與XP所不同的是,Scrum只是一個(gè)敏捷過(guò)程框架,它并沒(méi)有提供核心的價(jià)值觀與指導(dǎo)原則,也缺乏具體的實(shí)踐方法,例如,測(cè)試驅(qū)動(dòng)開(kāi)發(fā)、結(jié)隊(duì)編程等。Scrum僅僅規(guī)定了實(shí)施的基本流程與檢查表,它是一個(gè)開(kāi)放的管理框架,重心在于項(xiàng)目管理,而不是指導(dǎo)團(tuán)隊(duì)成員如何進(jìn)行開(kāi)發(fā)。這既是Scrum的優(yōu)點(diǎn),因?yàn)樗莒`活,能夠適應(yīng)大多數(shù)場(chǎng)景,也可以兼容并包地引入其他方法學(xué)所提倡的實(shí)踐;同時(shí)也是Scrum存在的固有缺陷,使得它難以被實(shí)踐。如果沒(méi)有一位優(yōu)秀的Scrum Master,而團(tuán)隊(duì)成員又缺乏自我組織和管理的能力,就會(huì)讓開(kāi)發(fā)過(guò)程變得一團(tuán)糟,團(tuán)隊(duì)成員將會(huì)無(wú)所適從。

在團(tuán)隊(duì)中開(kāi)發(fā)人員隨時(shí)可以與客戶進(jìn)行有效溝通,撰寫(xiě)user stories以確認(rèn)需求。簡(jiǎn)易快速的系統(tǒng)設(shè)計(jì),撰寫(xiě)?yīng)毩⒌尿?yàn)證程序以解決特殊困難的問(wèn)題,并找出演算法即可丟棄驗(yàn)證程式。規(guī)劃多次小型階段的方案計(jì)劃,并且以最快得速度完成每一階段的程序交付客戶,客戶負(fù)責(zé)Acceptance tests;Coding前必須完成Unit Test與Acceptance tests程序,所有模組整合前都須經(jīng)過(guò)Unit Tests;開(kāi)發(fā)人員必須快速回應(yīng)Bug和需求變更;要求二人一組使用一臺(tái)電腦設(shè)計(jì)程序,當(dāng)一人coding時(shí),另一人負(fù)責(zé)思考與設(shè)計(jì)(結(jié)對(duì)編程);程序必須符合程序規(guī)范,并常做程序的重構(gòu)(Refactoring)。

在Agile開(kāi)發(fā)實(shí)踐方面,Scrum可以借鑒XP提倡的結(jié)隊(duì)編程以及測(cè)試驅(qū)動(dòng)開(kāi)發(fā)實(shí)現(xiàn)編碼,通過(guò)重構(gòu)對(duì)編碼進(jìn)行調(diào)整以適應(yīng)需求的變化,Scrum為體,XP為用。XP開(kāi)發(fā)流程的基本步驟,如圖1所示。

圖1 XP開(kāi)發(fā)流程的基本步驟

測(cè)試驅(qū)動(dòng)開(kāi)發(fā)意味著你要先寫(xiě)一個(gè)自動(dòng)測(cè)試,然后編寫(xiě)恰好夠用的代碼,讓它通過(guò)這個(gè)測(cè)試,接著對(duì)代碼進(jìn)行重構(gòu),主要是提高它的可讀性和消除重復(fù),這將會(huì)對(duì)Agile Team整體素質(zhì)要求較高。

時(shí)至今日,Agile Process的精神已經(jīng)成為共識(shí),但是沒(méi)有一種固定的流程可以重復(fù)使用在不同的方案上,而且不管是RUP、XP、SCRUM、或其他的開(kāi)發(fā)流程都允許相當(dāng)大的彈性,我們必須按方案性質(zhì)的不同,調(diào)整或混合出適合的開(kāi)發(fā)流程,并允許團(tuán)隊(duì)在進(jìn)行中做必要的彈性修改,才能夠達(dá)成目標(biāo)。

2.敏捷之驅(qū)動(dòng)開(kāi)發(fā)

在XP開(kāi)發(fā)實(shí)踐中的TDD(Test Driven Development),它有一個(gè)別稱叫 Test-First Programming,要求開(kāi)發(fā)的第一步是根據(jù)需求,必須先寫(xiě)單元測(cè)試程序,然后再寫(xiě)實(shí)現(xiàn)程序讓符合需求的測(cè)試通過(guò)。我們知道XP中的需求是以“用戶故事”(User Story)的形式描述的,而用戶故事實(shí)質(zhì)上就是一種軟件“特性”(Feature)。TDD 講的是如何通過(guò)編寫(xiě)“測(cè)試”,尤其是單元測(cè)試,來(lái)驅(qū)動(dòng)軟件的設(shè)計(jì)和編程。

系統(tǒng)測(cè)試從哪里來(lái)?來(lái)自系統(tǒng)需求。系統(tǒng)需求從哪里來(lái)?來(lái)自用戶目標(biāo),TDD則也不例外。在需求不穩(wěn)定的情況下,這樣的TDD會(huì)有什么問(wèn)題?會(huì)不會(huì)帶來(lái)許多冗余的工作?答案是肯定的,這樣必然會(huì)帶來(lái)單元測(cè)試的不穩(wěn)定,這就需要敏捷開(kāi)發(fā)人員有相當(dāng)強(qiáng)的抽象能力,抽象、界定出主要相對(duì)穩(wěn)定需求就可以實(shí)施TDD。

敏捷團(tuán)隊(duì)可以采用在軟件工程學(xué)里有比較成熟的OOAD(Object Orient Analysis & Design,面向?qū)ο蟮姆治龊驮O(shè)計(jì))軟件開(kāi)發(fā)方法(參見(jiàn)筆者著作《我也能做CTO之程序員職業(yè)規(guī)劃》的高級(jí)程序員技術(shù)能力),在用戶需求層面找到,并抽象出相對(duì)不變的需求。OOAD科學(xué)分析法體現(xiàn)的是‘現(xiàn)實(shí)事實(shí)的抽象理解能力’,以業(yè)務(wù)為中心來(lái)分析解決問(wèn)題,不涉及求解方案。分析階段所做的主要工作是理解問(wèn)題和需求構(gòu)模,將現(xiàn)實(shí)世界中的問(wèn)題映射到問(wèn)題域,從而穩(wěn)定主要需求。OOAD包括‘設(shè)計(jì)模式能力’,反映計(jì)算機(jī)世界來(lái)體現(xiàn)現(xiàn)實(shí)世界。

分析階段主要是明確用戶的功能需求,滿足用戶所需的系統(tǒng)部件及其結(jié)構(gòu)。設(shè)計(jì)階段則主要是確定實(shí)現(xiàn)用戶需求的方法,即怎樣做才能滿足用戶需求,并構(gòu)造出系統(tǒng)的實(shí)現(xiàn)藍(lán)圖。

OOAD方法要求在設(shè)計(jì)中要映射現(xiàn)實(shí)世界中(指問(wèn)題域,如圖2所示)的對(duì)象和實(shí)體,如程序員、汽車、項(xiàng)目實(shí)施人員等。這就需要在設(shè)計(jì)中盡可能地接近現(xiàn)實(shí)世界,以最自然的方式表述實(shí)體。所以,面向?qū)ο蠹夹g(shù)的優(yōu)點(diǎn)就是能夠構(gòu)建與現(xiàn)實(shí)世界相對(duì)應(yīng)的問(wèn)題模型(橋梁),并保持它們的結(jié)構(gòu)關(guān)系和行為模式。

例如,我們通常做的系統(tǒng)分析是在假定需求不變的情況下進(jìn)行的,這樣可以把企業(yè)的資源配置到最優(yōu)的程度,但是企業(yè)的需求是變化、不穩(wěn)定的,那么以變化的需求為基礎(chǔ)建立起來(lái)的軟件系統(tǒng)當(dāng)然也就不穩(wěn)定了。需求是項(xiàng)目的根本,既然需求都是不穩(wěn)定的,那么何以建立起穩(wěn)定的企業(yè)信息系統(tǒng)呢?

圖2 軟件需求抽象示意圖

采用OOAD開(kāi)發(fā)的方法時(shí)的需求不穩(wěn)定,可分析出這不穩(wěn)定的東西就是對(duì)象。世界都是由對(duì)象組成的,而對(duì)象都是持久的,例如動(dòng)物、植物已經(jīng)有相當(dāng)長(zhǎng)的時(shí)間。雖然對(duì)象也在變化,動(dòng)物、植物也在不斷進(jìn)化。但對(duì)象在一個(gè)相當(dāng)長(zhǎng)的時(shí)期內(nèi)都存在,動(dòng)植物的存在時(shí)間肯定比任何一家企業(yè)長(zhǎng)久。面向?qū)ο箝_(kāi)發(fā)方法的精髓就是從企業(yè)的不穩(wěn)定需求中分析出企業(yè)的穩(wěn)定對(duì)象,以企業(yè)對(duì)象為基礎(chǔ)來(lái)組織需求、構(gòu)架系統(tǒng)。這樣得出的系統(tǒng)就會(huì)比傳統(tǒng)的系統(tǒng)要穩(wěn)定得多,因?yàn)槠髽I(yè)的模式一旦變化,只需將穩(wěn)定的企業(yè)對(duì)象重新組織就行了。

在敏捷XP中,采用的是TDD驅(qū)動(dòng)軟件的設(shè)計(jì)和編程實(shí)踐,即,測(cè)試驅(qū)動(dòng)開(kāi)

發(fā)。筆者負(fù)責(zé)過(guò)很多項(xiàng)目的敏捷實(shí)踐中,更喜歡UDD(Use Case-Driven Development)比較適合目前的國(guó)情。它可根據(jù)用戶目標(biāo),編寫(xiě)軟件需求,根據(jù)軟件需求,編寫(xiě)系統(tǒng)(驗(yàn)收)測(cè)試,即,用戶目標(biāo)驅(qū)動(dòng)。利用 UML 對(duì)軟件的設(shè)計(jì)進(jìn)行建模,這部分建模當(dāng)然是敏捷的(agile)。簡(jiǎn)單的只需幾秒鐘可以迅速在人的大腦中完成,復(fù)雜的則可以畫(huà)在紙上、白板上,記錄在建模工具生成的電子文檔中,當(dāng)需求穩(wěn)定后可以迅速轉(zhuǎn)化成軟件應(yīng)用代碼,在結(jié)合TDD會(huì)有很不錯(cuò)的效果,這種理論體系有些像太極原理,需求的變化看似武術(shù)中的招式,采用UDD見(jiàn)招破招,無(wú)招勝有招,這種客戶的需求應(yīng)變使得UDD更為敏捷。

3.實(shí)戰(zhàn)VSTS2010驅(qū)動(dòng)開(kāi)發(fā)

在Visual Studio 2010中,敏捷測(cè)試驅(qū)動(dòng)開(kāi)發(fā)功能非常強(qiáng)大,微軟把Scrum和XP敏捷思想融入到Agile過(guò)程框架之中。TFS2010中增強(qiáng)了團(tuán)隊(duì)源碼版本管理、迭代開(kāi)發(fā)和驅(qū)動(dòng)測(cè)試開(kāi)發(fā)模型等,從而給微軟.Net開(kāi)發(fā)人員非常大的幫助。VSTS2010測(cè)試馬甲和單元測(cè)試過(guò)程,如圖3所示。

圖3 VSTS2010單元測(cè)試過(guò)程

IUT——在生產(chǎn)環(huán)境中最終交付而開(kāi)發(fā)的軟件。

Test Environment——測(cè)試環(huán)境。

測(cè)試驅(qū)動(dòng)開(kāi)發(fā)(TDD)基本過(guò)程:

(1)明確當(dāng)前要完成的功能??梢杂涗洺梢粋€(gè)初始化測(cè)試清單(TODO)列表。

(2)快速完成針對(duì)一個(gè)功能的測(cè)試用例編寫(xiě)。

(3)測(cè)試代碼編譯通過(guò),但測(cè)試用例通不過(guò)。

(4)編寫(xiě)對(duì)應(yīng)的功能代碼。

(5)測(cè)試通過(guò)。

(6)對(duì)代碼進(jìn)行重構(gòu),并保證測(cè)試通過(guò)。

(7)循環(huán)完成所有功能的開(kāi)發(fā)。

·圖書(shū)收藏實(shí)例

確定好backlog,進(jìn)行sprint backlog,把story拆分成更小的故事,并在把故事拆分成任務(wù),索引卡片參考圖4所示。

圖4 圖書(shū)收藏Story索引卡

將案例分成任務(wù),我們需要在很大程度上實(shí)現(xiàn)讀者個(gè)人借閱圖書(shū)的收藏集合。其中之一backlog索引卡,如圖4所示。當(dāng)讀者到圖書(shū)館進(jìn)行圖書(shū)借閱中,會(huì)查詢圖書(shū)庫(kù)所有相關(guān)類圖書(shū)封面并選取其中自己最需要的幾本書(shū)。這個(gè)過(guò)程叫做“書(shū)簽”,圖書(shū)系統(tǒng)將通過(guò)圖書(shū)管理來(lái)支持這個(gè)活動(dòng)。為圖書(shū)借閱集合初始化測(cè)試清單,參考1所示。

表1 為圖書(shū)借閱夾初始化測(cè)試清單

列出表中完成有關(guān)的大部分任務(wù)測(cè)試清單,測(cè)試重點(diǎn)放在確保我們添加和移除圖書(shū)收藏夾的時(shí)候計(jì)數(shù)是正確的,以及集合的內(nèi)容和是否可以恢復(fù)集合,驅(qū)動(dòng)測(cè)試時(shí)間持續(xù)1到2小時(shí)的驅(qū)動(dòng)編程實(shí)踐中完成這個(gè)測(cè)試清單,并確保這個(gè)測(cè)試清單不需要再次分解這個(gè)任務(wù),以實(shí)現(xiàn)這個(gè)目標(biāo)。

·實(shí)現(xiàn)第一個(gè)測(cè)試

打開(kāi)Microsoft Visual Studio 2010,創(chuàng)建一個(gè)C#測(cè)試項(xiàng)目,項(xiàng)目名稱為L(zhǎng)ocalBookCollectionsTests,如圖5所示。

圖5 創(chuàng)建一個(gè)測(cè)試項(xiàng)目

清除原理項(xiàng)目方案自動(dòng)生成的unit的C#測(cè)試文件,建立一個(gè)新的名稱為CollectionsTests單元測(cè)試類,如圖6所示。

圖6 創(chuàng)建一個(gè)單元測(cè)試unit類

先用一些函數(shù)代碼替換第一個(gè)測(cè)試中的語(yǔ)句,這樣做驅(qū)動(dòng)了產(chǎn)品代碼Collections類的創(chuàng)建,并運(yùn)行其Count屬性。在CollectionsTests.cs類添加代碼:

 
 
 
  1. /// 
  2. /// 創(chuàng)建一個(gè)測(cè)試清單
  3. ///
  4. [TestMethod]
  5. public void EmptyCollectionsCountShouldBeZero()
  6. {
  7. Collctions collctions = new Collctions();
  8. Assert.AreEqual(0, collctions.Count);
  9. }

重新編譯生成這個(gè)解決方案,你將看到一個(gè)錯(cuò)誤,因?yàn)闆](méi)有為Collections類定義Count。創(chuàng)建Collections類,填入一下代碼:

 
 
 
  1. /// 
  2. /// 定義Count
  3. ///
  4. private int count;
  5. public int Count
  6. {
  7. get
  8. {
  9. return count;
  10. }
  11. }

運(yùn)行這個(gè)測(cè)試,輸出EmptyCollectionsCountShouldBeZero()單元測(cè)試成功界面,如圖7所示。

圖7 EmptyCollectionsCountShouldBeZero單元測(cè)試成功

·擱置你的測(cè)試清單代碼

為你的此次操作添加為一個(gè)版本控制擱置,這樣就可以在將來(lái)常常返回到這個(gè)點(diǎn)(版本控制),在VS2010菜單打開(kāi)View|Other Windows|Pending Changes,如圖8所示。

圖8 Vsts2010的View|Other Windows菜單

通常由于你并不想在所有相關(guān)單元測(cè)試通過(guò)之前,與團(tuán)隊(duì)的其他成員共享文件,因此保持VSTS存儲(chǔ)庫(kù)中擱置自己的文件版本,而不是將你的變更點(diǎn)簽入到團(tuán)隊(duì)代碼庫(kù)的分支中。完成所有單元測(cè)試后,可以直接點(diǎn)擊Check In 按鈕將此代碼加入到存儲(chǔ)庫(kù)中。Pending Changes擱置窗口,如圖9所示。

圖9 Pending Changes擱置窗口

Unshelve按鈕可以進(jìn)行版本回卷。點(diǎn)擊Shelve按鈕進(jìn)行版本擱置,建立一個(gè)Test the Should Be Zero的版本擱置,如圖10所示。

圖10 創(chuàng)建版本擱置

·修復(fù)一個(gè)失敗的測(cè)試和重構(gòu)

現(xiàn)在我們處理清單上另外幾個(gè)簡(jiǎn)單單元測(cè)試。它們?cè)贑ollections對(duì)象中添加和刪除各種Collection項(xiàng),并驗(yàn)證Count熟悉返回正確的值。

首先在CollectionsTests.cs類中添加如下代碼:

 
 
 
  1. /// 
  2. /// 修復(fù)一個(gè)失敗的測(cè)試
  3. ///
  4. [TestMethod]
  5. public void EmptyCollctionsCountShouldIsOne()
  6. {
  7. Collections collections = new Collections();
  8. collections.Add(new Collection("Label", new Uri("db://book0001")));
  9. Assert.AreEqual(1, collections.Count);
  10. }

生成這個(gè)項(xiàng)目(生成|生成項(xiàng)目),生成報(bào)錯(cuò)是因?yàn)镃ollection類缺少參數(shù),如圖11所示。

圖11 缺少參數(shù)報(bào)錯(cuò)界面

添加一個(gè)unit新類Collection.cs,加入一下代碼:

 
 
 
  1. private string label;
  2. private Uri uri;
  3. public Collection(string label, Uri uri)
  4. {
  5. this.label = label;
  6. this.uri = uri;
  7. }
  8. public string Label
  9. {
  10. get
  11. {
  12. return label;
  13. }
  14. }
  15. public Uri Uri
  16. {
  17. get
  18. {
  19. return uri;
  20. }
  21. }

替換Collections.Add()方法,修改Count屬性返回count變量值。

 
 
 
  1. /// 
  2. /// 增加一個(gè)Count實(shí)例變量
  3. /// 
  4. public void Add(Collection collction)
  5. {
  6. count++;
  7. }

再次生成這個(gè)項(xiàng)目,輸出結(jié)果顯示成功,如圖12所示。

圖12 輸出單元測(cè)試成功結(jié)果

再次重復(fù)上面操作,創(chuàng)建一個(gè)版本擱置。

4.確認(rèn)測(cè)試(BVT)

生成確認(rèn)測(cè)試(BVT)是通過(guò)產(chǎn)生測(cè)試列表來(lái)檢查軟件,它通常作為一個(gè)生成任務(wù)在團(tuán)隊(duì)生成結(jié)束的時(shí)候執(zhí)行。當(dāng)編寫(xiě)好一個(gè)unit測(cè)試時(shí),你可以加入到BVT中,確保任何時(shí)候在生存庫(kù)環(huán)境下運(yùn)行集成生成,相同的測(cè)試程序都可以依次執(zhí)行。

我們可以把上面的EmptyCollctionsCountShouldBeZero()和EmptyCollctionsCountShouldIsOne()測(cè)試方法創(chuàng)建生成測(cè)試。打開(kāi)Microsoft Visual Studio 2010菜單,點(diǎn)擊Test|Windows,如圖13所示。

圖13 Test|Windows菜單

點(diǎn)擊菜單項(xiàng)Test|Windows|Test List Editor,打開(kāi)Test List Editor界面,如圖14所示。

圖14 Test List Editor界面

參考圖14,點(diǎn)擊界面“here”或者菜單Test|Create New Test List,創(chuàng)建一個(gè)新的測(cè)試列表,測(cè)試列表名稱為BookCollectionBVT,如圖15所示。

圖15 創(chuàng)建一個(gè)新的BVT

同理,打開(kāi)菜單項(xiàng)Test|Windows|Test View,打開(kāi)Test View瀏覽框從而顯示驅(qū)動(dòng)單元測(cè)試程序,從Test View把EmptyCollctionsCountShouldBeZero和EmptyCollctionsCountShouldIsOne拖拽拖到Test List Editor面板中,為了確保這個(gè)測(cè)試是作為集成測(cè)試的一部分運(yùn)行,點(diǎn)擊BookCollectionBVT中所要測(cè)試程序的復(fù)選框。

點(diǎn)擊Run Checked Tests按鈕,運(yùn)行這個(gè)測(cè)試程序,如圖16所示。

圖16 運(yùn)行這個(gè)測(cè)試程序

運(yùn)行測(cè)試結(jié)果界面,如圖17所示。

圖17 運(yùn)行測(cè)試結(jié)果界面

這樣,安裝Microsoft Visual Studio 2010團(tuán)隊(duì)成員,在每個(gè)人的本機(jī)上開(kāi)發(fā)環(huán)境上運(yùn)行自己的單元測(cè)試之后,就可以添加并測(cè)試完成余下的那些索引卡下分解出來(lái)的測(cè)試列表單元測(cè)試程序清單,加入到BookCollectionBVT集成測(cè)試集合之中。

五、總結(jié)

Microsoft Visual Studio 2010的集成測(cè)試的功能特點(diǎn)結(jié)合MSF for Agile Software Development V5.0中的Scrum和XP敏捷過(guò)程框架,使從事在微軟.NET技術(shù)相關(guān)工作方向的人們擁有了一把利劍,并且可以充分的協(xié)助編程人員開(kāi)發(fā)出高質(zhì)量的軟件產(chǎn)品。

Scrum專注于聚焦在找到一個(gè)最小的迭代式項(xiàng)目管理框架,注重敏捷的計(jì)劃、跟蹤和管理,而沒(méi)有把它強(qiáng)行綁定在某一種具體的工程技術(shù)和做法之上有關(guān),這大概這也是它非常聰明的地方。既然沒(méi)有明確限定和約束,那么就代表著開(kāi)放,可以適用于不同類型、不同環(huán)境下的項(xiàng)目。

從Scrum和XP—>OOAD—>UDD和TDD,不禁讓筆者想起太極陰陽(yáng)理論,可以說(shuō)太極是我們中國(guó)人千年的傳統(tǒng)智慧,看待宇宙和世界的一種基本觀點(diǎn)和思維方式。世界和宇宙是由陰和陽(yáng)組成,兩者既互為對(duì)立、矛盾,又相互依存、共生,和諧、統(tǒng)一地構(gòu)成了整個(gè)宇宙。敏捷之道的精髓就在于客戶、團(tuán)隊(duì)和人與人之間的溝通與互動(dòng)、協(xié)作,所以,作為中國(guó)人尤其是中國(guó)的軟件人,更應(yīng)該開(kāi)闊自己的思維,學(xué)會(huì)運(yùn)用太極思想。

孫子兵法有云:兵無(wú)常勢(shì),水無(wú)常形,能因敵變化而取勝者謂之神。很多人都向往用兵如神的境界,想必也知道讀萬(wàn)卷書(shū)不如行萬(wàn)里路,紙上談兵的故事更是耳熟能詳,除了以上所講述的內(nèi)容外,也需要充分的運(yùn)用敏捷和進(jìn)行大量的實(shí)踐。

敏捷文化也決定管理,管理決定技術(shù),因此實(shí)施敏捷應(yīng)該只有具有先進(jìn)文化的企業(yè)和團(tuán)隊(duì),才能實(shí)現(xiàn)真正的敏捷變革,并從中獲益……。


網(wǎng)站名稱:詳解VisualStudio2010敏捷測(cè)試驅(qū)動(dòng)開(kāi)發(fā)
本文網(wǎng)址:http://www.dlmjj.cn/article/ccohios.html