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

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

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
初學(xué)者對(duì)于VS2005開發(fā)工具的前期研究與探討

隨著時(shí)代的進(jìn)步科技的發(fā)展Visual Studio 版本也快速的提升與升級(jí),下面我就對(duì)升級(jí)前和升級(jí)后的VS2005開發(fā)工具,做一下自己的解析。希望能夠?qū)Υ蠹矣袔椭M魑粚<覀兌喽嘀更c(diǎn)其中奧秘。

創(chuàng)新互聯(lián)公司專注于博愛網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠為您提供博愛營銷型網(wǎng)站建設(shè),博愛網(wǎng)站制作、博愛網(wǎng)頁設(shè)計(jì)、博愛網(wǎng)站官網(wǎng)定制、重慶小程序開發(fā)服務(wù),打造博愛網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供博愛網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。

OK,進(jìn)入正題.首先我們要解決一個(gè)問題,為什么我們需要做單元測(cè)試?這個(gè)問題,對(duì)有經(jīng)驗(yàn)的老程序員來說,并不算是問題.一個(gè)軟件在開發(fā)的過程中,倘若不是非常微型的軟件,那么我們通常會(huì)劃分出若干個(gè)功能模塊來,然后一個(gè)模塊一個(gè)模塊的進(jìn)行開發(fā).每個(gè)子模塊完成后,我們并不知道它是否能正常的運(yùn)行,尤其是當(dāng)這個(gè)模塊只是個(gè)中間件類似的代碼塊,那么我們?yōu)榱藴p少之后可能出現(xiàn)的問題和debug的難度(可以想象,如果在整合時(shí)期進(jìn)行測(cè)試或者是甚至還有其他的模塊需要依賴該模塊才能進(jìn)行開發(fā)的時(shí)候。

盡早的測(cè)試將會(huì)是非常的重要),我們常常會(huì)對(duì)這單個(gè)模塊進(jìn)行測(cè)試,比如寫段小程序,人為的寫入幾個(gè)參數(shù)來調(diào)用組件等.不用懷疑了,這就是單元測(cè)試.我相信,大部分的程序員都做過這樣的工作,而且也許還有許多程序員就如我上面所說的,單獨(dú)寫段小程序來進(jìn)行單元測(cè)試(我自己以前也是如此),現(xiàn)在我們需要認(rèn)真考慮下下一個(gè)問題了:如何進(jìn)行高效的,高可靠的,甚至自動(dòng)化的單元測(cè)試?

VSTS里的Unit Test可以幫助我們實(shí)現(xiàn)我們希望的絕大多數(shù)功能.我們從實(shí)際的項(xiàng)目開發(fā)入手來介紹.假設(shè)我們新建了一個(gè).net項(xiàng)目,嗯,這是一個(gè)有關(guān)緩存的子項(xiàng)目,名字叫MyCache.我們很認(rèn)真的設(shè)計(jì)了項(xiàng)目的架鉤,進(jìn)行了可行性分析,接口和抽象的建立,具體對(duì)象的建立,關(guān)系建立。

最后編碼完成了.項(xiàng)目經(jīng)理叫我們不要高興的太早,他要求我們必須對(duì)這個(gè)項(xiàng)目進(jìn)行可靠的單元測(cè)試,因?yàn)檫@個(gè)子項(xiàng)目非常重要,將會(huì)被許多項(xiàng)目引用.盡管我們很有信心,但是沒有#t#辦法,我們依然需要進(jìn)行單元測(cè)試.我們使用了Visual Studio Team System開發(fā)了這個(gè)項(xiàng)目,于是我們理所當(dāng)然的使用自帶的VS2005開發(fā)工具進(jìn)行單元測(cè)試.

Step1.我們需要建立項(xiàng)目文件與測(cè)試文件的映射關(guān)系.

難道要我們?nèi)ナ謩?dòng)創(chuàng)建嗎?這可是整個(gè)項(xiàng)目啊,里面也許包含了幾十個(gè)類,數(shù)百個(gè)方法…當(dāng)然沒那么復(fù)雜!實(shí)際上,我們需要做的工作很少,只是動(dòng)動(dòng)鼠標(biāo),等幾秒就可以了:)

在VS2005的IDE環(huán)境下,選擇menu里的Test,繼續(xù)選New Test項(xiàng),這時(shí)將跳出個(gè)窗體,里面可以選擇測(cè)試項(xiàng)目類型,這里我們選擇Unit Test Wizard,確定,輸入測(cè)試項(xiàng)目名,然后將又出現(xiàn)一個(gè)窗體,里面包含你當(dāng)前的solution里的所有project,我們選上我們的MyCache,確定.OK,看見一個(gè)進(jìn)度條,這是在執(zhí)行測(cè)試代碼的映射工作,等結(jié)束后,你就會(huì)發(fā)現(xiàn),已經(jīng)建立了一個(gè)測(cè)試項(xiàng)目了,里面的文件完全對(duì)應(yīng)你的目標(biāo)項(xiàng)目,每個(gè)類包含的方法也是與目標(biāo)類的方法一一對(duì)應(yīng),非常簡(jiǎn)單,cool,mission complete!

Step2.運(yùn)行我們的測(cè)試項(xiàng)目.

接下來,我們?cè)趺催M(jìn)行測(cè)試呢?里面有許多的類和方法,很多方法上還帶有像TestMethod這樣的標(biāo)簽屬性,但是我們關(guān)心的是,如何進(jìn)行測(cè)試?絕對(duì)不是通常的F5來運(yùn)行:(,在VSTS里,單元測(cè)試實(shí)際上有專門的管理工具.再次選到menu上的Test選項(xiàng),移到windows上展開自菜單,里面有好幾個(gè)選項(xiàng),我們選擇TestManager打開.在IDE窗口內(nèi)出現(xiàn)了一個(gè)視圖結(jié)構(gòu)的東西,在分割線的右邊是一個(gè)listView,里面全是當(dāng)前測(cè)試項(xiàng)目包含的方法,我們隨便選幾個(gè)方法給勾上,右鍵,Run Checked Test,下邊馬上有出現(xiàn)了Test Result窗體,里面就是剛才你選擇的方法.如果不出意外的話,你的這個(gè)窗體內(nèi)的方法result應(yīng)該都是failed之類的數(shù)據(jù),嗯,先不管這個(gè),最起碼,我們已經(jīng)運(yùn)行了一次測(cè)試項(xiàng)目了,雖然有些奇怪,不過我們已經(jīng)知道了如何運(yùn)行一個(gè)測(cè)試項(xiàng)目了,那么再進(jìn)入下一個(gè)step吧:)

Step3.看看我們的測(cè)試代碼里都有些什么.

雖然知道了怎么運(yùn)行測(cè)試項(xiàng)目,但莫名其妙的全部出錯(cuò),是怎么回事呢?我們進(jìn)入測(cè)試項(xiàng)目具體的代碼來看看.我們會(huì)發(fā)現(xiàn),每個(gè)測(cè)試類的名稱就是對(duì)應(yīng)的目標(biāo)類的名稱+"test",里面的方法也是如此,如果是構(gòu)造函數(shù),則是諸如ConstructorTest或ConstructorTestN這樣的形式,N為重載次數(shù).每個(gè)方法里面的代碼看上去也不奇怪,只是構(gòu)造參數(shù)來調(diào)用而已,最后通過斷言來判斷(用過NUnit的朋友不會(huì)陌生吧?).我們?cè)囍苯影岩粋€(gè)方法里的斷言去掉看看,編譯,TestManager,run,嘿,果然,去掉斷言的方法就pass了!看來蒙老大不難呢,只要把所有的方法的斷言都給去掉,然后給老大看測(cè)試后的結(jié)果,呵呵…

Step4.深入的了解一下方法上帶有的屬性的含義.

每個(gè)方法上幾乎都帶有TestMethod這個(gè)屬性,我們直覺告訴我們,這肯定是表示被測(cè)試函數(shù)的意思.事實(shí)也正是如此,在Unit Test里,VS2005開發(fā)工具有許多測(cè)試屬性。


文章標(biāo)題:初學(xué)者對(duì)于VS2005開發(fā)工具的前期研究與探討
轉(zhuǎn)載來源:http://www.dlmjj.cn/article/dhhsddj.html