軟件測試的目的
1、測試是為(wei)了(le)發現(xian)程序中的(de)(de)錯誤而執行程序的(de)(de)過程。
2、好的測(ce)試方案是極(ji)可能發現迄今為止(zhi)尚未發現的錯誤(wu)的測(ce)試方案。
3、成(cheng)功的測試是發(fa)現了至今為止尚未發(fa)現的錯誤(wu)的測試。
4、測試并不僅僅是為了找出錯誤。通過分析錯誤產生的原因和錯誤的發生趨勢,可以幫助軟件項目管理者發(fa)現當前軟(ruan)件開發(fa)過程中的缺陷,以(yi)便及時(shi)改進。
5、這種(zhong)分析也能幫助測試人(ren)員設計(ji)出有針對性(xing)的(de)測試方法,改善測試的(de)效(xiao)率和有效(xiao)性(xing)。
6、沒(mei)有(you)發現錯誤的(de)(de)測試也是有(you)價值的(de)(de),完(wan)整的(de)(de)測試是評定軟件(jian)質量(liang)的(de)(de)一種(zhong)方法(fa)。
7、另外,根據(ju)測試(shi)目的(de)的(de)不同(tong),還(huan)有回歸測試(shi)、壓力測試(shi)、性能(neng)測試(shi)等,分別為了檢驗修改或優化過程是(shi)(shi)否引發(fa)新(xin)的(de)問題、軟件所能(neng)達到(dao)處理能(neng)力和是(shi)(shi)否達到(dao)預期(qi)的(de)處理能(neng)力等。
軟件測試的原則
1、測試應該盡(jin)早進行,最好在需求階段就開始介(jie)入,因(yin)為最嚴重的(de)錯誤不外乎是系統(tong)不能滿足用戶(hu)的(de)需求。
2、程(cheng)序(xu)員應該(gai)避免檢(jian)查自己的程(cheng)序(xu),軟件測試(shi)應該(gai)由(you)第三方(fang)來負責。
3、設計(ji)測試(shi)用例時(shi)應考慮(lv)到合(he)法的輸(shu)入和(he)不合(he)法的輸(shu)入以及各種邊界條件,特殊情況下還(huan)要制造(zao)極(ji)端狀(zhuang)態和(he)意(yi)外狀(zhuang)態,如網絡異常(chang)中斷(duan)、電源斷(duan)電等。
4、應該充分注(zhu)意測試中的群(qun)集(ji)現象。
5、對(dui)錯(cuo)誤結(jie)(jie)果要(yao)進(jin)行(xing)一(yi)(yi)(yi)個確(que)認(ren)過程。一(yi)(yi)(yi)般由A測(ce)試出來(lai)的錯(cuo)誤,一(yi)(yi)(yi)定要(yao)由B來(lai)確(que)認(ren)。嚴重的錯(cuo)誤可以召開評審會(hui)議進(jin)行(xing)討論(lun)和分析,對(dui)測(ce)試結(jie)(jie)果要(yao)進(jin)行(xing)嚴格地確(que)認(ren),是否(fou)真的存在這個問題(ti)以及(ji)嚴重程度等。
6、制定嚴格(ge)的(de)測(ce)試計(ji)劃(hua)。一定要制定測(ce)試計(ji)劃(hua),并且(qie)要有指導性。測(ce)試時間安排盡量寬(kuan)松,不要希望(wang)在(zai)極短的(de)時間內完(wan)成(cheng)一個高水平的(de)測(ce)試。
7、妥善保存測試計(ji)劃、測試用例、出(chu)錯統(tong)計(ji)和(he)最終分析報告,為維(wei)護提供(gong)方便。
軟件測試的方法
1、靜態測試
靜(jing)態(tai)測(ce)(ce)試(shi)方式指(zhi)軟件代碼(ma)的靜(jing)態(tai)分(fen)析測(ce)(ce)驗(yan),此類過(guo)(guo)程中應用數據較少,主要(yao)過(guo)(guo)程為(wei)通過(guo)(guo)軟件的靜(jing)態(tai)性測(ce)(ce)試(shi)(即人工推斷或計(ji)算機輔助測(ce)(ce)試(shi))測(ce)(ce)試(shi)程序(xu)中運(yun)算方式、算法(fa)的正確(que)性,進而完成(cheng)測(ce)(ce)試(shi)過(guo)(guo)程,此類測(ce)(ce)試(shi)的優點(dian)在于(yu)能夠(gou)消(xiao)耗較短時(shi)間、較少資(zi)源(yuan)完成(cheng)對軟件、軟件代碼(ma)的測(ce)(ce)試(shi),能夠(gou)較為(wei)明顯地發現此類代碼(ma)中出現的錯誤。靜(jing)態(tai)測(ce)(ce)試(shi)方法(fa)適(shi)用范圍(wei)較大(da),尤其適(shi)用于(yu)較大(da)型的軟件測(ce)(ce)試(shi)。
2、動態測試
計算機動(dong)態測(ce)(ce)試的(de)(de)主(zhu)(zhu)要(yao)目(mu)的(de)(de)為(wei)檢測(ce)(ce)軟(ruan)件(jian)(jian)運行(xing)中(zhong)(zhong)出現的(de)(de)問(wen)題,較靜態測(ce)(ce)試方式(shi)相(xiang)比,其被(bei)稱為(wei)動(dong)態的(de)(de)原因(yin)(yin)即(ji)為(wei)其測(ce)(ce)試方式(shi)主(zhu)(zhu)要(yao)依賴程(cheng)序的(de)(de)運用,主(zhu)(zhu)要(yao)為(wei)檢測(ce)(ce)軟(ruan)件(jian)(jian)中(zhong)(zhong)動(dong)態行(xing)為(wei)是(shi)否缺失、軟(ruan)件(jian)(jian)運行(xing)效(xiao)果是(shi)否良(liang)好。其最為(wei)明顯的(de)(de)特(te)征即(ji)為(wei)進行(xing)動(dong)態測(ce)(ce)試時軟(ruan)件(jian)(jian)為(wei)運轉狀態,只有如此才(cai)能于使用過(guo)程(cheng)中(zhong)(zhong)發現軟(ruan)件(jian)(jian)缺陷,進而對(dui)此類(lei)缺陷進行(xing)修復。目(mu)前動(dong)態測(ce)(ce)試過(guo)程(cheng)中(zhong)(zhong)可包(bao)括兩類(lei)因(yin)(yin)素(su),即(ji)被(bei)測(ce)(ce)試軟(ruan)件(jian)(jian)與測(ce)(ce)試中(zhong)(zhong)所(suo)需數據,兩類(lei)因(yin)(yin)素(su)決(jue)定(ding)動(dong)態測(ce)(ce)試正確展開(kai)、有效(xiao)展開(kai)。
3、黑盒測試
黑盒測(ce)試(shi),顧名思(si)義即(ji)為(wei)將軟(ruan)件測(ce)試(shi)環境(jing)模擬為(wei)不可見的“黑盒”。通過數據(ju)(ju)(ju)(ju)輸入(ru)觀察數據(ju)(ju)(ju)(ju)輸出,檢(jian)查軟(ruan)件內部功能是否正常(chang)。測(ce)試(shi)展開時,數據(ju)(ju)(ju)(ju)輸入(ru)軟(ruan)件中,等待數據(ju)(ju)(ju)(ju)輸出。數據(ju)(ju)(ju)(ju)輸出時若與(yu)預(yu)計數據(ju)(ju)(ju)(ju)一致(zhi),則(ze)證明該(gai)軟(ruan)件通過測(ce)試(shi),若數據(ju)(ju)(ju)(ju)與(yu)預(yu)計數據(ju)(ju)(ju)(ju)有出入(ru),即(ji)便出入(ru)較(jiao)小(xiao)亦證明軟(ruan)件程序內部出現問題,需盡快解決。
4、白盒測試
白(bai)盒(he)測(ce)(ce)(ce)試(shi)(shi)(shi)(shi)(shi)(shi)相對(dui)(dui)于黑(hei)盒(he)測(ce)(ce)(ce)試(shi)(shi)(shi)(shi)(shi)(shi)而言具有一定透明性(xing),原理為(wei)根據(ju)軟(ruan)件內(nei)部應(ying)(ying)用(yong)(yong)、源(yuan)代(dai)(dai)碼等(deng)對(dui)(dui)產品(pin)內(nei)部工作(zuo)過(guo)(guo)程進(jin)行(xing)(xing)(xing)調(diao)試(shi)(shi)(shi)(shi)(shi)(shi)。測(ce)(ce)(ce)試(shi)(shi)(shi)(shi)(shi)(shi)過(guo)(guo)程中(zhong)(zhong)(zhong)(zhong)常將其與(yu)軟(ruan)件內(nei)部結構(gou)協同(tong)展開分(fen)析,最大優點即為(wei)其能夠有效(xiao)解(jie)決軟(ruan)件內(nei)部應(ying)(ying)用(yong)(yong)程序(xu)(xu)出(chu)(chu)現(xian)的問題(ti)(ti),測(ce)(ce)(ce)試(shi)(shi)(shi)(shi)(shi)(shi)過(guo)(guo)程中(zhong)(zhong)(zhong)(zhong)常將其與(yu)黑(hei)盒(he)測(ce)(ce)(ce)試(shi)(shi)(shi)(shi)(shi)(shi)方(fang)式結合,當(dang)測(ce)(ce)(ce)試(shi)(shi)(shi)(shi)(shi)(shi)軟(ruan)件功能較多時,白(bai)盒(he)測(ce)(ce)(ce)試(shi)(shi)(shi)(shi)(shi)(shi)法(fa)(fa)(fa)亦可對(dui)(dui)此類(lei)情況展開有效(xiao)調(diao)試(shi)(shi)(shi)(shi)(shi)(shi)。其中(zhong)(zhong)(zhong)(zhong),判定測(ce)(ce)(ce)試(shi)(shi)(shi)(shi)(shi)(shi)作(zuo)為(wei)白(bai)盒(he)測(ce)(ce)(ce)試(shi)(shi)(shi)(shi)(shi)(shi)法(fa)(fa)(fa)中(zhong)(zhong)(zhong)(zhong)最為(wei)主要的測(ce)(ce)(ce)試(shi)(shi)(shi)(shi)(shi)(shi)程序(xu)(xu)結構(gou)之一,此類(lei)程序(xu)(xu)結構(gou)作(zuo)為(wei)對(dui)(dui)程序(xu)(xu)邏輯結構(gou)的整體實現(xian),對(dui)(dui)于程序(xu)(xu)測(ce)(ce)(ce)試(shi)(shi)(shi)(shi)(shi)(shi)而言具有較為(wei)重要的作(zuo)用(yong)(yong)。此類(lei)測(ce)(ce)(ce)試(shi)(shi)(shi)(shi)(shi)(shi)方(fang)式針(zhen)(zhen)對(dui)(dui)程序(xu)(xu)中(zhong)(zhong)(zhong)(zhong)各(ge)類(lei)型(xing)的代(dai)(dai)碼進(jin)行(xing)(xing)(xing)覆蓋(gai)式檢測(ce)(ce)(ce),覆蓋(gai)范圍較廣,適(shi)用(yong)(yong)于多類(lei)型(xing)程序(xu)(xu)。實際檢測(ce)(ce)(ce)中(zhong)(zhong)(zhong)(zhong),白(bai)盒(he)測(ce)(ce)(ce)試(shi)(shi)(shi)(shi)(shi)(shi)法(fa)(fa)(fa)常與(yu)黑(hei)盒(he)檢測(ce)(ce)(ce)法(fa)(fa)(fa)并用(yong)(yong),以(yi)動(dong)態檢測(ce)(ce)(ce)方(fang)式中(zhong)(zhong)(zhong)(zhong)測(ce)(ce)(ce)試(shi)(shi)(shi)(shi)(shi)(shi)出(chu)(chu)的未知錯(cuo)誤為(wei)例,首先使(shi)用(yong)(yong)黑(hei)盒(he)檢測(ce)(ce)(ce)法(fa)(fa)(fa),若程序(xu)(xu)輸(shu)入(ru)數(shu)(shu)據(ju)與(yu)輸(shu)出(chu)(chu)數(shu)(shu)據(ju)相同(tong),則證(zheng)明內(nei)部數(shu)(shu)據(ju)未出(chu)(chu)現(xian)問題(ti)(ti),應(ying)(ying)從代(dai)(dai)碼方(fang)面(mian)進(jin)行(xing)(xing)(xing)分(fen)析,若出(chu)(chu)現(xian)問題(ti)(ti)則使(shi)用(yong)(yong)白(bai)盒(he)測(ce)(ce)(ce)試(shi)(shi)(shi)(shi)(shi)(shi)法(fa)(fa)(fa),針(zhen)(zhen)對(dui)(dui)軟(ruan)件內(nei)部結構(gou)進(jin)行(xing)(xing)(xing)分(fen)析,直至(zhi)檢測(ce)(ce)(ce)出(chu)(chu)問題(ti)(ti)所在,及時加以(yi)修改。
申明:以上內容源于程序系統索引或網民分享提供,僅供您參考使用,不代表本網站的研究觀點,請注意甄別內容來源的真實性和權威性。