關(guān)鍵詞:測試基礎(chǔ)理論
1串绩、軟件測試的含義(概念)——什么是軟件測試
2图贸、軟件測試的目的(意義)——為什么要做軟件測試
3驰弄、軟件測試的對象(測什么)——軟件測試是測什么
4遮糖、軟件測試的分類——有哪些類型的軟件測試
5绣的、軟件測試的原則——軟件測試要遵循什么原則
6、軟件測試的步驟——如何一步一步做軟件測試
7欲账、軟件測試的質(zhì)量——從哪幾個方面評估軟件的質(zhì)量
8屡江、軟件測試的風(fēng)險——可預(yù)見的、不可預(yù)見的
9赛不、軟件測試結(jié)束的標(biāo)準(zhǔn)——哪些指標(biāo)達(dá)標(biāo)
1.軟件測試概念(掌握)
測試的定義:在規(guī)定的條件下對程序進(jìn)行操作惩嘉,以發(fā)現(xiàn)程序錯誤,衡量軟件質(zhì)量踢故,并對其是否能滿足設(shè)計要求進(jìn)行評估的過程文黎。(在未知軟件惹苗,程序模塊,某個版本是否有錯誤的情況下耸峭,從客戶的角度出發(fā)桩蓉,依據(jù)需求規(guī)格說明書等文檔,選擇科學(xué)的方法劳闹,設(shè)計出正確的業(yè)務(wù)操作流程院究,盡可能多的模擬用戶對軟件的各種操作,盡可能多的發(fā)現(xiàn)軟件中的缺陷本涕,并且將缺陷記錄報告业汰,提交給相關(guān)開發(fā)人員修復(fù),最終達(dá)到提高軟件質(zhì)量的目的)
2. ? ?軟件測試的目的(掌握)
1)驗證軟件是否滿足 軟件開發(fā)合同 或者項目開發(fā)計劃菩颖,系統(tǒng)/子系統(tǒng)設(shè)計文檔样漆,軟件需求規(guī)格說明,軟件產(chǎn)品說明等規(guī)定的軟件質(zhì)量要求?
2)通過測試晦闰,發(fā)現(xiàn)軟件缺陷 ?
3)為軟件產(chǎn)品的質(zhì)量測量和評價提供依據(jù)氛濒。
3.軟件測試對象(掌握)
軟件:包括程序、數(shù)據(jù)鹅髓、文檔
1) ? ? ? ?源程序/目標(biāo)代碼
2)????????各開發(fā)階段的文檔(需求規(guī)格說明舞竿、概要設(shè)計說明、詳細(xì)設(shè)計說明及其它相關(guān)文檔)
4. ? ?軟件測試的分類——從不同的角度進(jìn)行分類(掌握)
1) ? ? ? ?根據(jù)開發(fā)階段劃分為:單元測試窿冯、集成測試骗奖、系統(tǒng)測試、驗收測試
2) ? ? ? ?根據(jù)是否運行程序劃分:靜態(tài)測試醒串、動態(tài)測試
3) ? ? ? ?根據(jù)是否查看代碼劃分:白盒測試执桌、灰盒測試、黑盒測試
4) ? ? ? ?其他分類:回歸測試芜赌、冒煙測試仰挣、隨機(jī)測試、敏捷測試
5.軟件測試原則(掌握)
基于測試是為了尋找軟件的錯誤與缺陷缠沈,評估與提高軟件質(zhì)量膘壶,因此我們提出了這樣的一組測試原則,如下所示。
1)????????所有的軟件測試都應(yīng)追溯到用戶需求洲愤。
2)????????應(yīng)當(dāng)把“盡早地和不斷地進(jìn)行軟件測試”作為軟件測試者的座右銘颓芭。
3)????????完全測試是不可能的,測試需要終止柬赐。
4)????????測試無法顯示軟件潛在的缺陷亡问。
5)????????充分注意測試中的缺陷群集現(xiàn)象。(2/8原則)
6)????????程序員應(yīng)避免檢查自己的程序肛宋。
7)????????盡量避免測試的隨意性州藕。(測試活動依賴于測試內(nèi)容)
6. ? ?軟件測試的流程(步驟)——理論流程束世,具體根據(jù)實際情況而定,總體一致(掌握)
1床玻、需求分析
2毁涉、需求評審
3、測試計劃
4笨枯、測試用例
5薪丁、用例評審
6遇西、搭建測試環(huán)境
7馅精、測試執(zhí)行
8、回歸測試
9粱檀、測試報告
7. ? 軟件測試的質(zhì)量(了解)
軟件質(zhì)量就是“軟件與明確的和隱含的定義的需求相一致的程度”;
明確的需求指:軟件符合明確敘述的功能和性能需求洲敢、文檔中明確描述的開發(fā)標(biāo)準(zhǔn);
隱含的需求指:所有專業(yè)開發(fā)的軟件都應(yīng)具有的隱含特征的程度,比如:符合行業(yè)標(biāo)準(zhǔn)茄蚯。
8. ? ?軟件測試的風(fēng)險(掌握)
1压彭、軟件測試中的軟件風(fēng)險分析是根據(jù)預(yù)測軟件將出現(xiàn)的風(fēng)險,制定軟件測試計劃并排列優(yōu)先等級渗常,風(fēng)險分析是對軟件中潛在的問題進(jìn)行識別壮不、估計和評價的過程。
2皱碘、風(fēng)險也包括進(jìn)度風(fēng)險询一、質(zhì)量風(fēng)險、人員風(fēng)險癌椿、變更風(fēng)險健蕊、成本風(fēng)險等
9. ? ?軟件測試的結(jié)束標(biāo)準(zhǔn)
1、需求覆蓋率100%
2踢俄、用例執(zhí)行率100%
3缩功、陷遺留率不超過2%
4、其他的相關(guān)質(zhì)量標(biāo)準(zhǔn)達(dá)到預(yù)期標(biāo)準(zhǔn)
質(zhì)量
1.什么是質(zhì)量
對于不同類型的產(chǎn)品都办,評價質(zhì)量好壞的關(guān)注點不同
2.軟件質(zhì)量有何價值嫡锌?
軟件質(zhì)量的價值,取決于其應(yīng)用情景的重要程度琳钉,以及該應(yīng)用情景對于該軟件產(chǎn)品的依賴程度世舰。
3.軟件質(zhì)量模型
內(nèi)部質(zhì)量:它是從內(nèi)部觀點出發(fā)的軟件產(chǎn)品特性的總體。內(nèi)部質(zhì)量是針對內(nèi)部質(zhì)量需求被測量和評價的質(zhì)量槽卫。
外部質(zhì)量:外部質(zhì)量是從外部觀點出發(fā)的軟件產(chǎn)品特性的總體跟压。它是當(dāng)軟件執(zhí)行時,更典型地是使用外部度量在模擬環(huán)境中歼培,用模擬數(shù)據(jù)測試時震蒋,所被測量和評價的質(zhì)量茸塞。
使用質(zhì)量:是從用戶觀點出發(fā),來看待軟件產(chǎn)品用于特定環(huán)境和條件下的質(zhì)量查剖。它測量用戶在特定環(huán)境中達(dá)到其任務(wù)目標(biāo)的程度钾虐,而不是測量軟件自身的性質(zhì)。
4.什么是質(zhì)量保證
為保證產(chǎn)品和服務(wù)充分滿足消費者要求的質(zhì)量而進(jìn)行的有計劃笋庄、有組織的活動效扫。
5.?QC與QA的區(qū)別
QC和QA的主要區(qū)別:前者是保證產(chǎn)品質(zhì)量符合規(guī)定,后者是建立體系并確保體系按要求運作,以提供內(nèi)外部的信任
QC就是測試人員,職責(zé)是盡可能早地發(fā)現(xiàn)軟件的缺陷直砂,并確保缺陷得到修復(fù)(有些企業(yè)里菌仁,測試人員被稱為SQA)
QA是流程的監(jiān)督者,職責(zé)是創(chuàng)建和執(zhí)行 改進(jìn)軟件開發(fā)過程静暂,并防止軟件缺陷發(fā)生 的標(biāo)準(zhǔn)和方法
6. ?ISO9000與CMMI的介紹
ISO:國際標(biāo)準(zhǔn)化組織
ISO9000:國家質(zhì)量管理體系標(biāo)準(zhǔn)
7. CMMI是什么济丘?
Capability Maturity Model Integration (能力成熟度模型綜合)
該模型提供一套可供公眾使用的準(zhǔn)則;這些準(zhǔn)則描述那些成功地實施了過程改進(jìn)的組織的特性洽蛀。
該模型用“軟件能力成熟度”來衡量這種軟件綜合能力
測試計劃
1.測試計劃的定義
測試計劃就是描述所有要完成的測試工作摹迷,包括被測試項目的背景、目標(biāo)郊供、范圍峡碉、方式、資源驮审、進(jìn)度安排鲫寄、測試組織,以及與測試有關(guān)的風(fēng)險等方面头岔。
2.測試計劃的作用
?????????????????? 1)測試過程提供指導(dǎo)
??????????????????????????? ?測試目標(biāo)
??????????????????????????? ?測試內(nèi)容
??????????????????????????? ?測試方法
??????????????????????????? ?測試時間周期
?????????????????? 2)改善測試任務(wù)與測試過程的關(guān)系
?????????????????? 3)提高測試的組織塔拳、規(guī)劃和管理能力
3.如何制定測試計劃
認(rèn)真做好測試資料的搜集整理工作;
明確測試的目標(biāo)峡竣,增強測試計劃的實用性靠抑;
堅持“5W”規(guī)則,明確內(nèi)容與過程适掰;
采用評審和更新機(jī)制颂碧,保證測試計劃滿足實際需求
4.測試計劃的內(nèi)容
2)??????需要測試的特征1)??????測試項目簡介
3)??????不需要測試的特征
4)??????測試的方法(測試人員、測試工具类浪、測試流程)
5)??????測試環(huán)境(軟件载城、硬件、網(wǎng)絡(luò))
6)??????測試環(huán)境是測試人員為進(jìn)行軟件測試而搭建的環(huán)境
7)??????測試開始條件和結(jié)束條件
8)??????測試者的任務(wù)费就、培訓(xùn)
9)??????測試進(jìn)度與跟蹤
10)??測試風(fēng)險與解決
11)??測試計劃的審批與變更方式
5.測試風(fēng)險與解決
07測試方案
1.? 測試方案的目的
在方向上明確要測什么诉瓦、怎么測,以及達(dá)到什么樣質(zhì)量標(biāo)準(zhǔn)。
2.? 測試計劃與方案的區(qū)別
3.? 如何制定有效測試方案
1)????????測試需求分析
2)????????測試策略
3)????????測試資源
4)????????測試進(jìn)度計劃
5)????????風(fēng)險管理
6)????????質(zhì)量
4.? 測試策略
制定測試策略:測試資源睬澡、測試進(jìn)度計劃固额、風(fēng)險管理、質(zhì)量
測試類型:
1)????????功能測試
2)????????界面測試
3)????????安全測試
4)????????本地/國際化測試
5)????????數(shù)據(jù)庫測試
6)????????可靠性測試
7)????????集成測試
8)????????兼容性測試
9)????????自動化測試
10)????性能測試
11)????回歸測試
黑盒用例設(shè)計方法
1. 黑盒測試的概念
黑盒測試又稱功能測試煞聪、數(shù)據(jù)驅(qū)動測試或基于規(guī)格說明書的測試斗躏,是一種從用戶觀點出發(fā)的測試。
2.?????? 黑盒測試主要測試的錯誤類型有
?????????????????? ①不正確或遺漏的功能昔脯;
?????????????????? ②接口啄糙、界面錯誤;
?????????????????? ③性能錯誤云稚;
?????????????????? ④數(shù)據(jù)結(jié)構(gòu)或外部數(shù)據(jù)訪問錯誤隧饼;
?????????????????? ⑤初始化或終止條件錯誤等等。
3.?????? 黑盒測試的實施過程
?????????????????? 測試計劃階段
?????????????????? 測試設(shè)計階段
?????????????????? 測試執(zhí)行階段
?????????????????? 測試總結(jié)階段
4.?????? 黑盒用例設(shè)計技術(shù)(重點)
?????????????????? ?1)等價類劃分方法(重點)
?????????????????? ?2)邊界值分析方法(重點)
?????????????????? ?3)場景法 (重點)流程分析法碱鳞,是業(yè)務(wù)流程
??????????????????????????? ???????? 基本流(正常流)
??????????????????????????? ???????? 備選流(異常流)
?????????????????????4)錯誤推測方法
基于經(jīng)驗和直覺推測程序中所有可能存在的各種錯誤, 從而有針對性的設(shè)計測試用例的方法桑李。
?????????????????? ?5)因果圖方法
考慮輸入條件之間的相互組合,可能會產(chǎn)生一些新的情況. 但要檢查輸入條件的組合不是一件容易的事情, 即使把所有輸入條件劃分成等價類,他們之間的組合情況也相當(dāng)多.
?????????????????? ?6)判定表驅(qū)動分析方法
判定表(Decision Table)是分析和表達(dá)多邏輯條件下執(zhí)行不同操作的工具踱蛀,它可以把復(fù)雜的邏輯關(guān)系和多種條件組合的情況表達(dá)得既具體又明確窿给。
?????????????????? ?7)規(guī)則及規(guī)則合并
規(guī)則合并有兩條或多條規(guī)則具有相同的動作,并且其條件項之間存在著極為相似的關(guān)系
?????????????????? ?8)正交試驗設(shè)計方法
它是根據(jù)正交性從全面試驗中挑選出部分有代表性的點進(jìn)行試驗率拒,這些有代表性的點具備了“均勻分散崩泡,齊整可比”的特點,是一種高效率猬膨、快速角撞、經(jīng)濟(jì)的實驗設(shè)計方法。
5.??????等價類劃分方法
可以把全部輸入數(shù)據(jù)合理劃分為若干等價類,在每一個等價類中取一個數(shù)據(jù)作為測試的輸入條件,就可以用少量代表性的測試數(shù)據(jù).取得較好的測試結(jié)果.
?????????????????? ???????? 有效等價類
??????????????????????????? ?????????????????? 滿足輸入條件
?????????????????? 無效等價類
??????????????????????????? ???????? 不滿足輸入條件
???????????????????????????????????? 超范圍數(shù)值
???????????????????????????????????? 空值
???????????????????????????????????? 特殊字符
???????????????????????????????????? 空格? (trim 去除空格)
6.?????? 邊界值分析方法:是對等價類劃分方法的補充
7.?????? 測試方法選擇的綜合策略
1)????????首先進(jìn)行等價類劃分勃痴,包括輸入條件和輸出條件的等價劃分谒所,將無限測試變成有限測試,這是減少工作量和提高測試效率最有效方法沛申。
2)????????在任何情況下都必須使用邊界值分析方法劣领。經(jīng)驗表明用這種方法設(shè)計出測試用例發(fā)現(xiàn)程序錯誤的能力最強。
3)????????用錯誤推測法再追加一些測試用例铁材。
4)????????對照程序邏輯尖淘,檢查已設(shè)計出的測試用例的邏輯覆蓋程度。如果沒有達(dá)到要求的覆蓋標(biāo)準(zhǔn)著觉,應(yīng)當(dāng)再補充足夠的測試用例村生。
5)????????對于業(yè)務(wù)流清晰的系統(tǒng),可以利用場景法貫穿整個測試案例過程饼丘,在案例中綜合使用各種測試方法趁桃。
?????????????????? 在實際測試中,往往是綜合使用各種方法才能有效提高測試效率和測試覆蓋度
測試用例設(shè)計
1. 測試用例的主要構(gòu)成要素
測試用例是一份測試文檔,它描述輸入卫病、動作屡穗、和一個期望的結(jié)果,其目的是確定應(yīng)用程序的某個特性是否正常的工作
2. 設(shè)計測試用例的原則
?????????????????? 用語簡潔清晰忽肛,但不能過于簡單
?????????????????? 用語無歧義村砂,盡量少用過長的句子
?????????????????? 用例的各個基本要素要齊備,不能缺失
?????????????????? 用例的步驟應(yīng)該足夠詳細(xì)屹逛,操作應(yīng)該明確
?????????????????? 容易被其它測試工程師讀懂础废,并能順利執(zhí)行
3. 用例的粒度
1)????????粒度,指的是粗細(xì)程度罕模。粒度大评腺,就是說一個用例所涵蓋的關(guān)注內(nèi)容比較多,反之同理
2)????????用例的粒度大淑掌,則總的用例數(shù)就少蒿讥,用例看起來也簡潔
3)????????用例的粒度小,則單條用例關(guān)注的測試點很集中抛腕,不容易遺漏芋绸,并且執(zhí)行需要的時間比較好估計
4. 執(zhí)行結(jié)果
1)????????當(dāng)用例還尚未被執(zhí)行時,是New未執(zhí)行狀態(tài)
2)????????當(dāng)執(zhí)行結(jié)果與預(yù)期結(jié)果相符時担敌,是Pass通過狀態(tài)
3)????????當(dāng)執(zhí)行結(jié)果與預(yù)期結(jié)果不符時摔敛,是Fail失敗狀態(tài)
4)????????當(dāng)因為軟件有缺陷而妨礙了用例步驟的執(zhí)行,且該缺陷并不是我們的測試點全封,則用例是Block阻礙狀態(tài)马昙。
5)????????當(dāng)用例正在執(zhí)行中,但是需要耗較多時間去觀察其結(jié)果刹悴,是Investigate觀察中狀態(tài)行楞。
5. 編寫元素
?????????????????? 用例編號、用例標(biāo)題土匀、用例級別子房、前提條件、操作步驟恒削、預(yù)期結(jié)果池颈、編寫人、備注
測試執(zhí)行
1.測試執(zhí)行
???????? 1)什么是執(zhí)行測試用例
根據(jù)已有的測試用例钓丰,按照里面的步驟一步一步的執(zhí)行躯砰,查看預(yù)期結(jié)果與實際結(jié)果是否一致。
???????? 2)測試執(zhí)行過程注意事項
ü? 搭建測試環(huán)境事項
ü? 注意前提條件和特殊說明
ü? 測試用例要全部執(zhí)行
ü? 不要忽視任何偶然現(xiàn)象
ü? 加強測試過程記錄
ü? 詳細(xì)預(yù)期與實際的不一致
ü? 提交缺陷時與開發(fā)的關(guān)系處理
ü? 提交一份優(yōu)秀的問題報告單
ü? 及時更新測試用例
2. 軟件缺陷
?????????????????? 缺陷又名為BUG(臭蟲)
?????????????????? 并非所有的缺陷都需要修復(fù)
a)????????沒有足夠的時間
b)????????不算真正的軟件缺陷
c)????????修復(fù)的風(fēng)險太大
d)????????不值得修復(fù)
3. 缺陷的流程
4. 缺陷生命周期—狀態(tài) ? ? ? ? ? ??
5. 缺陷的等級 ? ? ?
6. 測試報告
?????????????????? 測試報告的主要內(nèi)容
??????????????????????????? 數(shù)據(jù)統(tǒng)計
????????????????????????????遺留bug情況
??????????????????????????? 測試風(fēng)險
??????????????????????????? 測試對象評估
??????????????????????????? 測試結(jié)論????????
測試總結(jié):回顧整個項目的測試過程携丁,總結(jié)個人成長經(jīng)驗琢歇,取得了什么成績兰怠、有哪些不足、有什么好的經(jīng)驗或者方法可以和大家分享呢李茫?對工作進(jìn)行一個理性的分析和思考揭保。
參考資料: