微軟軟件測試的可借鑒之處
作者:網(wǎng)絡轉載 發(fā)布時間:[ 2010/9/19 15:14:30 ] 推薦標簽:
1、測試流程
首先說說測試流程,微軟的測試流程也沒什么新的東西,和大多數(shù)的測試流程一樣。
大致是先進行測試準備,然后是Testcase的編寫,然后是白盒測試(不一定每個項目都有),然后是功能測試階段,然后是驗收測試,終release。
如果看流程的話,和一般公司大同小異,沒什么新花樣。但是我覺得值得借鑒的是兩點。
第一,微軟的流程執(zhí)行的非常認真。
這點非常值得提倡,我們都知道,測試的終質量決定于測試流程和測試人員素質,要想測試質量有保證,要么是流程很完善,要么你流程不行,但是個人能力超強。如果有一個很好的流程,算執(zhí)行的人稍微差點,終的質量也不會差到哪里去。所以流程是很重要的。
但是,看國內的公司欠缺的是這個,要么是沒有流程,要么流程是個花架子,沒認真執(zhí)行過。我想微軟的測試人都是超級牛人,但是人家還是老老實實的忠實按照流程來走,我覺得這點非常好。(在IBM 也是這樣,筆者以前在IBM作項目的時候,發(fā)現(xiàn)他們的文檔寫的特認真,流程特認真),所以說忠實的執(zhí)行一個好的流程是成功的一大半。
第二,在整個流程中,微軟非常強調測試盡早介入。
微軟在這方面是一致提倡的,按照我們國內IT業(yè)的惡習,一般都是軟件主體差不多成型了,拉幾個測試人員過來點點,其實這是非常不好的。微軟的測試人員在項目一開始和開發(fā)人員同步介入,在需求階段開始介入,進行需求評審。在開發(fā)人員開始編碼的時候,測試人員開始編寫Test case,并開發(fā)一些測試工具,或者寫一些配套的測試代碼(不要奇怪,微軟的測試人員都能寫很好的代碼)。微軟的理念是:預防bug比解決bug好,所以非常提倡測試盡早介入,把一部分bug消滅在需求階段。
2、自動化流程
說到自動化,大家可能以為我是說微軟的自動化測試工具多牛,其實微軟內部用到的自動化測試工具倒是不多,算有也都是內部開發(fā)的,非常實用的,他們不會去用MI的工具。
說微軟的自動化程度高,主要是體現(xiàn)在流程方面,譬如說整個自動構建流程,在開發(fā)人員代碼check in之后,系統(tǒng)自動發(fā)郵件,郵件內容是一個change list,包括代碼更新list以及一個編譯者添加的comment,其內容是該版本功能的變化或者修改掉的bug ID。整個測試過程中能用自動化的地方都盡可能采用自動化,盡可能減少人為失誤,并且可以使人和機器并行工作。個人覺得,這點很值得我們國內的測試公司借鑒,能自動化的流程都自動化,減少一些不必要的溝通。
3、質量控制機制
說到質量控制是個大問題,需要整個團隊和流程提高素質。那么微軟的質量控制可以借鑒的是什么呢?是他們的機制。在微軟的測試流程當中,在開發(fā)的早期,項目中所有的問題都是Dev leader和PM商量說了算(當然也要參考需求方的意見),但是到后期,具體是功能測試之后,項目的主動權都在測試這邊,某個bug的要不要解決,或者項目進度控制都是測試leader說了算。這和國內的大多數(shù)軟件公司是不一樣的,在微軟,測試人員要對終的軟件質量負責任,但是也有相應的權利來約束開發(fā)人員。當然,他們也肯定有一些bug是產生爭議的,這個時候的仲裁機制是PM,這個不是我們傳統(tǒng)的PM(Project manager),而是一種具有微軟特色的PM(全稱是Program manager)。這樣,測試人員在對一些爭議bug的處理上有相當?shù)脑捳Z權。
4、測試用例及管理
微軟的測試用例倒沒什么特別的,不過看過他們用例之后,還是覺得寫的詳細,認真,但是又不冗長拖沓,這個需要很高深的水平。另外,微軟的測試用例管理用的是微軟自己開發(fā)的用例管理工具。
另外值得說明的是,微軟的每個用例都進行了分級,并且功能所在的模塊都標的很清楚。
5、效率
在效率方面,微軟的測試效率非常高!高的讓人驚嘆,我問一個在微軟工作的哥們,“你們那邊測試的大特點是什么”,他說“大特點是快!”,是效率很高,具體是在測試后期過程中測試和開發(fā)之間的反饋非?欤_發(fā)修改一定量的bug,提交一個新的版本。測試人員往往能在很快的時間內把測試結果反饋出來,一般是在1天之內能把用例快速run一遍,這樣能減少某些后期才發(fā)現(xiàn)bug導致的項目delay。在國內很多項目的通病是,開發(fā)解決問題帶進一個新問題,測試人員整個遍歷一遍用例之后才能發(fā)現(xiàn),這樣來回反復消耗了大量的時間。
但微軟是如何才能實現(xiàn)快速反饋呢?
第一,測試人員對程序的了解,微軟的測試人員對程序內部結構都非常熟悉,修改某一個地方,可能引起什么問題,哪些用例需要重新測試,測試人員非常清楚,能快速的執(zhí)行可能出錯的地方。如果某些模塊不熟悉,那么他們會和開發(fā)人員在一起溝通這次修改可能引起的問題。
第二,工具!還是工具,在微軟的測試中,測試人員用各種工具幫助測試,提高測試效率是占到很大的比重。
第三,時間意識。微軟的測試人員有強烈的時間意識。
相關推薦

最新發(fā)布
性能測試之測試環(huán)境搭建的方法
2020/7/21 15:39:32軟件測試是從什么時候開始被企業(yè)所重視的呢?
2020/7/17 9:09:11Android自動化測試框架有哪些?有什么用途?
2020/7/17 9:03:50什么樣的項目適合做自動化?自動化測試人員應具備怎樣的能力?
2020/7/17 8:57:06幾大市面主流性能測試工具測評
2020/7/17 8:52:11RPA機器人能夠快速響應企業(yè)需求,是怎么做到的?
2020/7/17 8:48:05Bug可以真正消滅嗎?為什么?
2020/7/17 8:43:03軟件測試基本概念是怎么來的?軟件測試生命周期的形成歷經(jīng)了什么?
2020/7/16 9:11:10