1、軟件測試概念迎献、分類
軟件測試就是為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程瞎访,使用人工或自動手段來運行或測試某個系統(tǒng)的過程,其目的在于檢驗它是否滿足規(guī)定的需求或弄清楚預(yù)期結(jié)果與實際結(jié)果之間的差別吁恍;
軟件測試分類:
????1)按測試方式分類:靜態(tài)測試(不運行扒秸,對代碼、數(shù)據(jù)流冀瓦、控制流)伴奥、動態(tài)測試(運行,模擬輸入)咕幻;
????2)按測試方法分類:白盒測試(基于代碼和設(shè)計渔伯,對測試人員要求比較高顶霞,一般只進(jìn)行重點部分測試)肄程、黑盒測試(對照規(guī)格說明書,測試人員知道設(shè)計思路)选浑、灰盒測試(基于對程序內(nèi)部細(xì)節(jié)有限認(rèn)知)
????3)按測試過程分類:單元測試(單項功能蓝厌,多用白盒)、集成測試(模塊之間古徒,多用黑盒)拓提、系統(tǒng)測試(整體、實際運作環(huán)境下)隧膘、驗收測試(產(chǎn)品常規(guī)條件下使用情況代态,多用黑盒)
????4)按測試目的分類:功能、健壯性(容錯能力)疹吃、性能(正常蹦疑、峰值、異常負(fù)載)萨驶、【強(qiáng)度(異常資源配置下)歉摧、壓力(超負(fù)荷)】(都是性能測試)、用戶界面、安全叁温、可靠性(滿足要求再悼、指標(biāo))、安裝/反安裝膝但、文檔冲九、恢復(fù)、兼容性跟束、負(fù)載
2娘侍、軟件測試的V、W模型以及特點
V型: 反映了測試活動與分析設(shè)計活動的關(guān)系泳炉,左開發(fā)過程憾筏、右測試過程。
局限性:僅僅把測試作為編碼之后的一個階段花鹅,忽視測試活動對需求分析氧腰、系統(tǒng)設(shè)計等活動的驗證和確認(rèn)的功能;
W型: 增加軟件開發(fā)各個階段中應(yīng)同步進(jìn)行驗證(用數(shù)據(jù)證明是否正確制造產(chǎn)品刨肃,強(qiáng)調(diào)過程正確)和確認(rèn)(強(qiáng)調(diào)結(jié)果正確)活動古拴,盡早全面發(fā)現(xiàn)問題。
局限性:需求真友、設(shè)計黄痪、編碼等被認(rèn)為是串行的,只能等待上一個階段結(jié)束才能開始下一個階段盔然,無法支持迭代開發(fā)桅打,對于開發(fā)工作多變情況,不能解除測試管理面臨的困惑愈案。
3挺尾、軟件測試的人員基本素養(yǎng)
????1)技能要求:知識范圍更廣,業(yè)務(wù)(行業(yè))知識是一個前提條件站绪;計算機(jī)專業(yè)知識(軟件編程知識遭铺,網(wǎng)絡(luò)、操作系統(tǒng)恢准、數(shù)據(jù)庫魂挂、中間件等知識、測試環(huán)境)馁筐;測試專業(yè)知識(測試技術(shù)涂召、黑白盒等);用戶知識眯漩。
????2)素質(zhì)要求:具有較強(qiáng)的責(zé)任心芹扭、自信心及工作要專心麻顶、細(xì)心、耐心舱卡;具有很強(qiáng)的溝通和交流能力辅肾;團(tuán)隊合作精神角溃。
4阱洪、測試用例的概念试吁、分類邦鲫,不同測試階段采用哪些類型的測試用例
????一個文檔,測試執(zhí)行的最小實體剩膘,是為特定的目的而設(shè)計的一組測試輸入推穷、執(zhí)行條件和預(yù)期結(jié)果慧耍;
????1)白盒測試用例:主要有邏輯覆蓋法和基本路徑測試法設(shè)計的測試用例既绩,基本思路是使用程序設(shè)計的控制結(jié)構(gòu)導(dǎo)出測試用例概龄;
????2)軟件各項功能的測試用例:一般有等價類劃分法、邊界值分析法饲握、錯誤推測法私杜、因果圖法等黑盒測試方法;
????3)用戶界面測試用例
????4)軟件的各項非功能性測試用例:性能救欧、強(qiáng)度衰粹、兼容性、可靠性等
????5)對軟件缺陷修正所確定的測試用例:特定階段和不同測試用例關(guān)系
測試階段 -> 測試類型
????單元測試:模塊功能測試(接口笆怠、覆蓋铝耻、路徑)
????集成測試:接口、路徑蹬刷、部分功能測試
????系統(tǒng)測試:功能瓢捉、兼容性、性能箍铭、用戶界面泊柬、安全性椎镣、強(qiáng)度诈火、可靠性、安裝/反安裝
????驗收測試:文檔状答、相關(guān)文檔技術(shù)
5冷守、增量式集成測試中的測試方法
????自頂向下、自底向上:注意驅(qū)動器(d)和模擬子模塊(S)位置惊科;應(yīng)用寬度優(yōu)先算法拍摇、深度優(yōu)先算法思想
6、測試的組織與人員管理原則
????從組織結(jié)構(gòu)馆截、通信方式充活、激勵機(jī)制蜂莉、培訓(xùn)風(fēng)險管理作答;
7混卵、根據(jù)IEEE829-1998標(biāo)準(zhǔn)映穗,軟件測試常用文檔
????測試計劃文檔、測試設(shè)計規(guī)格說明文檔幕随、測試用例文檔蚁滋、測試規(guī)程規(guī)格說明文檔、測試日志文檔赘淮、測試缺陷報告辕录、測試總結(jié)報告。
8梢卸、根據(jù)IEEE829-1998標(biāo)準(zhǔn)走诞,測試計劃文檔的相關(guān)內(nèi)容
????測試計劃標(biāo)識符;介紹蛤高;需要測試的功能速梗;方法(策略);不需要測試的功能襟齿;測試項通過/失敗的標(biāo)準(zhǔn)姻锁;測試中斷和恢復(fù)的規(guī)定;測試完成所提交的材料猜欺;測試任務(wù)位隶;環(huán)境需求;職責(zé)开皿;人員安排和培訓(xùn)需求涧黄;進(jìn)度表;潛在的問題和風(fēng)險赋荆;審批笋妥。
9、軟件缺陷概念窄潭,復(fù)雜軟件缺陷的生命周期
軟件缺陷:存在于軟件(文檔春宣、數(shù)據(jù)、程序)之中的那些不希望嫉你,或不可接受的偏差月帝,而導(dǎo)致軟件產(chǎn)生質(zhì)量問題。
滿足五個條件之一:1)未達(dá)到規(guī)格說明書中的功能幽污;2)超出規(guī)格說明書說明的范圍嚷辅;3)未達(dá)到規(guī)格說明書目標(biāo);4)運行出現(xiàn)錯誤距误;5)測試人員認(rèn)為難以理解簸搞、不易使用扁位、運行速度慢,用戶認(rèn)為使用效果不好趁俊;
10贤牛、測試方法
1)邏輯覆蓋:
????a)語句覆蓋(每個語句覆蓋一次);
????b)判定覆蓋(每個判斷分支至少執(zhí)行一遍)则酝;
????c)條件覆蓋(每個條件判斷的每個可能取值至少執(zhí)行一次)殉簸;
????d)判定/條件覆蓋(每個條件所有可能取值至少執(zhí)行一次,每個判斷可能結(jié)果至少執(zhí)行一次)沽讹;
????e)條件組合覆蓋(每個判斷的所有可能條件取值組合至少執(zhí)行一次)
2)基本路徑測試:
????畫出程序控制流程圖般卑,計算程序環(huán)路復(fù)雜性,確定獨立路徑集合爽雄,準(zhǔn)備測試用例蝠检;
3)等價類劃分:
????a)區(qū)間;
????b)數(shù)值挚瘟;
????c)數(shù)值集合叹谁;
????d)限制條件?
? ? ... ...
4)邊界值分析
5)因果分析:
????輸入條件聯(lián)系、相互組合(恒等乘盖、非焰檩、或、與)订框;約束符號(E互斥析苫、I包含、O唯一穿扳、R要求衩侥、M強(qiáng)制)
6)場景法