軟件測(cè)試(Software Testing),描述一種用來(lái)促進(jìn)鑒定軟件的正確性、完整性、安全性和質(zhì)量的過(guò)程。換句話說(shuō),軟件測(cè)試是一種實(shí)際輸出與預(yù)期輸出之間的審核或者比較過(guò)程。軟件測(cè)試的經(jīng)典定義是:在規(guī)定的條件下對(duì)程序進(jìn)行操作,以發(fā)現(xiàn)程序錯(cuò)誤,衡量軟件質(zhì)量,并對(duì)其是否能滿足設(shè)計(jì)要求進(jìn)行評(píng)估的過(guò)程。
軟件測(cè)試是使用人工操作或者軟件自動(dòng)運(yùn)行的方式來(lái)檢驗(yàn)它是否滿足規(guī)定的需求或弄清預(yù)期結(jié)果與實(shí)際結(jié)果之間的差別的過(guò)程。它是幫助識(shí)別開發(fā)完成(中間或zui終的版本)的計(jì)算機(jī)軟件(整體或部分)的正確度(correctness) 、完全度(completeness)和質(zhì)量(quality)的軟件過(guò)程;是SQA(software quality assurance)的重要子域。
Glenford J.Myers曾對(duì)軟件測(cè)試的目的提出過(guò)以下觀點(diǎn):
(1)測(cè)試是為了發(fā)現(xiàn)程序中的錯(cuò)誤而執(zhí)行程序的過(guò)程。
(2)好的測(cè)試方案是極可能發(fā)現(xiàn)迄今為止尚未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試方案。
(3)成功的測(cè)試是發(fā)現(xiàn)了至今為止尚未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試。
(4)測(cè)試并不僅僅是為了找出錯(cuò)誤。經(jīng)過(guò)分析錯(cuò)誤產(chǎn)生的原因和錯(cuò)誤的發(fā)生趨勢(shì),可以幫助項(xiàng)目管理者發(fā)現(xiàn)當(dāng)前軟件開發(fā)過(guò)程中的缺陷,以便及時(shí)改進(jìn)。
(5)這種分析也能幫助測(cè)試人員設(shè)計(jì)出有針對(duì)性的測(cè)試方法,改善測(cè)試的效率和有效性。
(6)沒(méi)有發(fā)現(xiàn)錯(cuò)誤的測(cè)試也是有價(jià)值的,完整的測(cè)試是評(píng)定軟件質(zhì)量的一種方法。
(7)另外,根據(jù)測(cè)試目的的不同,還有回歸測(cè)試、壓力測(cè)試、性能測(cè)試等,分別為了檢驗(yàn)修改或優(yōu)化過(guò)程是否引發(fā)新的問(wèn)題、軟件所能達(dá)到處理能力和是否達(dá)到預(yù)期的處理能力等。
測(cè)試原則
一,測(cè)試應(yīng)該盡早進(jìn)行,zui好在需求階段就開始介入,因?yàn)閦ui嚴(yán)重的錯(cuò)誤不外乎是系統(tǒng)不能滿足用戶的需求。
二,程序員應(yīng)該避免檢查自己的程序,軟件測(cè)試應(yīng)該由第三方來(lái)負(fù)責(zé)。
三,設(shè)計(jì)測(cè)試用例時(shí)應(yīng)考慮到合法的輸入和不合法的輸入以及各種邊界條件,特殊情況下還要制造極端狀態(tài)和意外狀態(tài),如網(wǎng)絡(luò)異常中斷、電源斷電等。
四,應(yīng)該充分注意測(cè)試中的群集現(xiàn)象。
五,對(duì)錯(cuò)誤結(jié)果要進(jìn)行一個(gè)確認(rèn)過(guò)程。一般由A測(cè)試出來(lái)的錯(cuò)誤,一定要由B來(lái)確認(rèn)。嚴(yán)重的錯(cuò)誤可以召開評(píng)審會(huì)議進(jìn)行討論和分析,對(duì)測(cè)試結(jié)果要進(jìn)行嚴(yán)格地確認(rèn),是否真的存在這個(gè)問(wèn)題以及嚴(yán)重程度等。
六,制定嚴(yán)格的測(cè)試計(jì)劃。一定要制定測(cè)試計(jì)劃,并且要有指導(dǎo)性。測(cè)試時(shí)間安排盡量寬松,不要希望在極短的時(shí)間內(nèi)完成一個(gè)高水平的測(cè)試。
七,妥善保存測(cè)試計(jì)劃、測(cè)試用例、出錯(cuò)統(tǒng)計(jì)和zui終分析報(bào)告,為維護(hù)提供方便。
測(cè)試目標(biāo)
1.發(fā)現(xiàn)一些可以經(jīng)過(guò)測(cè)試避免的開發(fā)風(fēng)險(xiǎn)。
2.實(shí)施測(cè)試來(lái)降低所發(fā)現(xiàn)的風(fēng)險(xiǎn)。
3.確定測(cè)試何時(shí)可以結(jié)束。
4.在開發(fā)項(xiàng)目的過(guò)程中將測(cè)試看作是一個(gè)標(biāo)準(zhǔn)項(xiàng)目。
測(cè)試的對(duì)象
1. 程序。
2. 數(shù)據(jù)。
3. 文檔。
測(cè)試過(guò)程
第1步:對(duì)要執(zhí)行測(cè)試的產(chǎn)品/項(xiàng)目進(jìn)行分析,確定測(cè)試策略,制定測(cè)試計(jì)劃。該計(jì)劃被審核批準(zhǔn)后轉(zhuǎn)向第二步。測(cè)試工作啟動(dòng)前一定要確定正確的測(cè)試策略和指導(dǎo)方針,這些是后期開展工作的基礎(chǔ)。只有將本次的測(cè)試目標(biāo)和要求分析清楚,才能決定測(cè)試資源的投入。
第二步:設(shè)計(jì)測(cè)試用例。設(shè)計(jì)測(cè)試用例要根據(jù)測(cè)試需求和測(cè)試策略來(lái)進(jìn)行,進(jìn)度壓力不大時(shí),應(yīng)該設(shè)計(jì)的詳細(xì),如果進(jìn)度、成本壓力較大,則應(yīng)該保證測(cè)試用例覆蓋到關(guān)鍵性的測(cè)試需求。該用例被批準(zhǔn)后轉(zhuǎn)向第三步。
第三步:如果滿足“啟動(dòng)準(zhǔn)則”(EntryCriteria),那么執(zhí)行測(cè)試。執(zhí)行測(cè)試主要是搭建測(cè)試環(huán)境,執(zhí)行測(cè)試用例。執(zhí)行測(cè)試時(shí)要進(jìn)行進(jìn)度控制、項(xiàng)目協(xié)調(diào)等工作。
第四步:提交缺陷。這里要進(jìn)行缺陷審核和驗(yàn)證等工作。
第五步:消除軟件缺陷。通常情況下,開發(fā)經(jīng)理需要審核缺陷,并進(jìn)行缺陷分配。程序員修改自己負(fù)責(zé)的缺陷。在程序員修改完成后,進(jìn)入到回歸測(cè)試階段。如果滿足“完成準(zhǔn)則”(ExitCriteria),那么正常結(jié)束測(cè)試。
第六步:撰寫測(cè)試報(bào)告。對(duì)測(cè)試進(jìn)行分析,總結(jié)本次的經(jīng)驗(yàn)教訓(xùn),在下一次的工作中改。軟件測(cè)試過(guò)程管理,主要包括軟件測(cè)試是什么樣的過(guò)程,如何評(píng)價(jià)一個(gè)軟件測(cè)試過(guò)程,如何進(jìn)行配置管理和測(cè)試風(fēng)險(xiǎn)分析以及測(cè)試成本的管理。
千鋒互聯(lián),做真實(shí)的自己,用良心做教育。千鋒互聯(lián)關(guān)注學(xué)員和企業(yè)的雙向需求,致力于培養(yǎng)互聯(lián)網(wǎng)中高端IT人才。千鋒互聯(lián)軟件測(cè)試課程,師資力量雄厚、采用實(shí)戰(zhàn)授課,分階教學(xué)模式、硬件設(shè)施完善、學(xué)員都是大專及以上學(xué)歷,給學(xué)員營(yíng)造優(yōu)質(zhì)的學(xué)習(xí)氛圍。
課程咨詢
咨詢老師:金老師
咨詢電話:010-64707530