工欲善其事,必先利其器,軟件測試的器是什么
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時間:[ 2012/3/28 11:41:08 ] 推薦標簽:
工欲善其事,必先利其器。每每看到這句話會想起孔夫子老人家,此句出自他的論語,是其對子貢的一番話。子貢問為仁,子曰:工欲善其事,必先利其器。居是邦也。事其大夫之賢者,友其士之仁者?鬃痈嬖V子貢,一個做手工或工藝的人,要想把工作完成,做得完善,應(yīng)該先把工具準備好。那么為仁是用什么工具呢?住在這個,想對這個有所貢獻,必須結(jié)交上流社會,乃至政壇上的大員,政府的中堅;和這個社會上各種賢達的人,都要交成朋友。換句話說,是要先了解這個的內(nèi)情,有了良好的關(guān)系,然后才能得到有所貢獻的機會,完成仁的目的。
由此可以看出孔子他老人家的思想也是放之四海而皆容,流傳千年而皆有用,有點扯遠了。說說軟件測試,如何做好軟件測試呢?如果把軟件測試喻之為事,那軟件測試的器又是什么?作為QA人員,掌握QA工作的基本知識是必要的,更多的知識也是在工作中不斷積累的,此之可謂之器。實際上作為一的QA工程師,還該有豐富的編程經(jīng)驗和相關(guān)的計算機網(wǎng)絡(luò),數(shù)據(jù)庫,軟件工程學,系統(tǒng)、運籌、統(tǒng)計等學科,甚至要學習心理學,美學等以幫助自己了解客戶需求和產(chǎn)品分析。
軟件測試是一由底向上、循序漸進的過程,對應(yīng)于代碼、軟件設(shè)計、用戶需求和系統(tǒng)工程,軟件測試又可分為四個階段:單元測試(Unit Test)、集成測試(Integration Test)、有效性測試(Validation Test)和系統(tǒng)測試(System Test)。
1、單元測試對應(yīng)于系統(tǒng)的代碼,所以一般小公司都會由開發(fā)人員完成,在專業(yè)的軟件公司會有白盒測試,一般和開發(fā)人員同部進行對代碼進行走查及路徑覆蓋等測試。
2、集成測試,將多個模塊組合成更大的模塊或子系統(tǒng)或產(chǎn)品,然后進行測試,它主要一次性組裝方式,自頂向下方式,自底向上方式或混合方式等,一般選自底向上方式,整體測試要等開發(fā)人員完成全部代碼后才可以進行。
● 一次性組裝方式,是將所有模塊組裝在一起測試,它不需要額外的編碼,缺點是查錯困難;
● 自頂向下方式:按系統(tǒng)程序結(jié)構(gòu)、沿控制層次從上往下,一步一步進行。主模塊為驅(qū)動模塊、下屬模塊用樁模塊代替,它能較早發(fā)現(xiàn)主要控制方面的問題,缺點是需要建立樁模塊,這比較困難,而且算法和I/O在底層、較晚才能發(fā)現(xiàn)問題。
● 自底向上方式:從程序模塊結(jié)構(gòu)的底層模塊開始組裝和測試,建立驅(qū)動模塊比樁模塊容易,算法和I/O在首先得到測試,并且多個模塊能同時并行測試。但程序未能作為一個整體運行,主要的控制后才能測試。
3、有效性測試 (Validation Test )
有效性測試,也稱確認測試或驗收測試,目的是向未來的用戶表明系統(tǒng)能夠像預(yù)定要求那樣工作。經(jīng)集成測試后,已經(jīng)按照設(shè)計把所有的模塊組裝成一個完整的軟件系統(tǒng),接口錯誤也已經(jīng)基本排除了,接著應(yīng)該進一步驗證軟件的有效性,即軟件的功能和性能如同用戶所合理期待的那樣。
有效性測試運用黑盒測試,以驗證是否滿足所有需求(功能、性能、可移植性、兼容性、可維護性等)、確定輸出結(jié)果(數(shù)據(jù)、界面等)是否精確、完整或合理。如數(shù)據(jù)證實可包括格式檢驗、完整性檢驗、合理性檢驗和范圍檢驗。執(zhí)行它以確保新的或經(jīng)過修改的程序是無差錯的并可以執(zhí)行其預(yù)定的功能。
● 軟件配置復(fù)查:各成分齊全,具有維護階段所必需的細節(jié)
● 檢查數(shù)據(jù)結(jié)構(gòu)、源程序及目標代碼、技術(shù)文檔,用戶文檔
● α測試:開發(fā)者通過用戶來觀察所開發(fā)的軟件,在受控制的環(huán)境下進行(用戶在開發(fā)環(huán)境下)
● β測試:由公司的支持產(chǎn)品預(yù)發(fā)行的外部客戶實行,開發(fā)者無法控制(實際使用者在實際使用環(huán)境下)
● 由用戶進行的驗收測試,讓用戶驗證是否滿足需求,由用戶參加設(shè)計測試用例,使用用戶界面輸入測試數(shù)據(jù),并分析測試的輸出結(jié)果。一般使用實際數(shù)據(jù)進行測試。
4、系統(tǒng)測試 (System Test)
系統(tǒng)測試是將軟件作為整個基于計算機系統(tǒng)的一個元素來進行測試,它應(yīng)與硬件、外設(shè)、支持軟件、數(shù)據(jù)、人員等結(jié)合起來的綜合環(huán)境中進行。系統(tǒng)測試主要工作有恢復(fù)性、安全性、壓力和性能等測試。
5、α、β測試
α/β測試 (Alpha/ Beta Testing) ──當開發(fā)和測試已基本完成,需要在正式發(fā)行之前后尋找毛病而進行的測試。此時還允許有較小的設(shè)計修改。通常由終用戶或其他人進行這種測試,而不是由程序員和測試人員來進行。
下篇本博文將介紹些時下流行的測試方法
相關(guān)推薦
相關(guān)產(chǎn)品

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