本書主要介紹Web和APP項目的功能測試、接口測試、自動化測試、性能測試的理論以及測試技術(shù)。功能部分包括測試流程、測試方法、測試用例、缺陷管理等。接口部分包括接口的分類、原理以及工具的使用等。自動化部分包括UI自動化、接口自動化以及工具的使用等。性能部分包括性能的分類、指標(biāo)以及工具的使用等。全書覆蓋了初級、中級和高級軟件測試的知識要點,并結(jié)合目前測試崗位的技能要求,提供了極具參考價值的多個熱點行業(yè)測試實操案例,力求使更多的讀者掌握和學(xué)好軟件測試的相關(guān)技術(shù)。
本書適合希望從事軟件測試的其他專業(yè)人員閱讀,也適合于從事軟件測試領(lǐng)域的技術(shù)人員參考。
前言
第1章軟件測試?yán)碚?br>1.1軟件
1.1.1軟件發(fā)展史
1.1.2軟件生命周期
1.1.3軟件體系結(jié)構(gòu)
1.1.4軟件研發(fā)模型
1.1.5軟件缺陷
1.2質(zhì)量
1.2.1管理體系
1.2.2軟件質(zhì)量
1.2.3質(zhì)量特性
1.2.4質(zhì)量活動SQA
1.3軟件測試概念
1.3.1軟件測試發(fā)展史
1.3.2軟件測試的目的
1.3.3軟件測試的原則
1.3.4軟件測試用例
1.4軟件測試模型
1.4.1V模型
1.4.2W模型
1.4.3H模型
1.4.4X模型
1.4.5敏捷測試
1.5質(zhì)量與測試
1.5.1如何保證軟件質(zhì)量
1.5.2如何評價軟件質(zhì)量
第2章軟件測試過程
2.1軟件測試分類
2.1.1按測試階段劃分
2.1.2按執(zhí)行狀態(tài)劃分
2.1.3按測試行為劃分
2.1.4其他測試類型
2.2單元測試
2.2.1單元測試環(huán)境
2.2.2單元測試策略
2.2.3單元測試常見錯誤
2.2.4單元測試工具
2.3集成測試
2.3.1集成測試環(huán)境
2.3.2集成測試策略
2.3.3集成測試分析
2.3.4集成測試工具
2.4系統(tǒng)測試
2.4.1系統(tǒng)測試環(huán)境
2.4.2系統(tǒng)測試策略
2.5驗收測試
2.5.1UAT測試
2.5.2α測試
2.5.3β測試
2.6回歸測試
2.6.1回歸測試流程
2.6.2回歸測試策略
2.7測試的流程
2.7.1測試角色與職責(zé)
2.7.2測試計劃與控制
2.7.3測試分析與設(shè)計
2.7.4測試實現(xiàn)與執(zhí)行
2.7.5測試評估與報告
2.7.6測試結(jié)束活動
第3章軟件測試方法
3.1白盒測試
3.1.1白盒測試常用技術(shù)
3.1.2基本路徑測試
3.1.3白盒測試的優(yōu)缺點
3.2黑盒測試
3.2.1等價類劃分法
3.2.2邊界值分析法
3.2.3判定表分析法
3.2.4因果圖分析法
3.2.5流程分析法
3.2.6狀態(tài)遷移法
3.2.7正交試驗法
3.2.8錯誤推測與異常分析
3.2.9黑盒測試的優(yōu)缺點
3.3灰盒測試
3.4同行評審
3.4.1同行評審的類型
3.4.2同行評審的角色
3.4.3同行評審的流程
3.4.4階段評審
3.4.5同行評審與階段評審
的區(qū)別
第4章軟件測試管理
4.1配置管理
4.1.1配置管理角色與職責(zé)
4.1.2配置管理的流程
4.1.3配置管理工具
4.1.4SVN工具介紹
4.2需求管理
4.2.1什么是需求
4.2.2需求類型
4.2.3需求工程
4.2.4需求開發(fā)
4.2.5需求管理過程
4.3缺陷管理
4.3.1軟件缺陷的狀態(tài)
4.3.2缺陷管理的角色
4.3.3缺陷管理基本流程
4.3.4缺陷的等級劃分
4.3.5缺陷報告的內(nèi)容
4.3.6缺陷分析
4.3.7缺陷管理工具
4.4風(fēng)險管理
4.4.1風(fēng)險管理的過程
4.4.2常見的風(fēng)險
4.5敏捷項目管理
4.5.1敏捷項目的理解
4.5.2敏捷項目需求的管理
4.5.3敏捷項目時間的管理
4.5.4敏捷項目成本的管理
4.5.5敏捷項目質(zhì)量的管理
4.5.6敏捷項目溝通的管理
4.5.7敏捷項目風(fēng)險的管理
第5章Web項目測試
5.1Web端網(wǎng)絡(luò)協(xié)議
5.1.1OSI參考模型
5.1.2TCP/IP協(xié)議
5.1.3HTTP協(xié)議
5.1.4HTTPS協(xié)議
5.1.5SSL協(xié)議
5.1.6TLS協(xié)議
5.2Web基礎(chǔ)
5.2.1Web的發(fā)展
5.2.2Web的特點
5.2.3Web工作原理
5.2.4Web頁面加載過程
5.3Web測試技術(shù)
5.3.1Web功能測試
5.3.2Web性能測試
5.3.3Web兼容測試
5.3.4Web接口測試
5.3.5Web安全測試
第6章接口測試——Jmeter
6.1理解接口測試
6.1.1為什么做接口測試
6.1.2接口測試的分類
6.1.3接口測試的原理
6.1.4接口測試的意義
6.1.5數(shù)據(jù)格式
6.2接口工具介紹
6.2.1POSTMan
6.2.2RESTClient
6.3壓力測試工具Jmeter
6.3.1Jmeter安裝與配置
6.3.2Jmeter目錄介紹
6.3.3Jmeter組件詳解
6.3.4Jmeter常用內(nèi)置函數(shù)
6.4Jmeter案例講解
6.4.1簡單的案例
6.4.2實現(xiàn)同線程之間傳
Cookie
6.4.3實現(xiàn)不同線程之間傳
Cookie
6.4.4直接調(diào)用數(shù)據(jù)庫的
數(shù)據(jù)
6.4.5實現(xiàn)數(shù)據(jù)驅(qū)動
6.5Jmeter性能測試
6.5.1Jmeter插件管理
6.5.2接口性能測試
6.5.3Web端性能測試
6.5.4Jmeter生成測試報告
第7章自動化測試——Selenium
7.1理解自動化測試
7.1.1自動化測試的分層
概念
7.1.2自動化測試類型和
內(nèi)容
7.1.3什么項目適合自動化
測試
7.1.4前端技術(shù)介紹
7.1.5手工測試與自動化測試
用例
7.1.6自動化測試用例編寫
原則
7.2工具Selenium
7.2.1Selenium介紹
7.2.2編寫第一個自動化
腳本
7.2.3WebDriver的多瀏覽器
測試
7.3WebDriver API使用
7.3.1網(wǎng)頁元素定位
7.3.2使用id定位元素
7.3.3使用name定位元素
7.3.4使用class定位元素
7.3.5使用tag標(biāo)簽名定位
元素
7.3.6使用link鏈接定位
元素
7.3.7使用partial link部分鏈接
定位元素
7.3.8使用XPath定位元素
7.3.9使用CSS selector定位
元素
7.3.10WebDriver API詳解
7.4自動化測試模型
7.4.1線性測試
7.4.2模塊化測試
7.4.3數(shù)據(jù)驅(qū)動測試
7.5unittest自動化測試
7.5.1unittest單元測試框架
介紹
7.5.2unittest管理Web測試
用例
7.5.3用ddt模塊做參數(shù)化
7.5.4HTML測試報告
第8章性能測試——
LoadRunner
8.1軟件性能
8.1.1理解性能測試
8.1.2性能測試類型
8.2性能指標(biāo)
8.2.1并發(fā)數(shù)
8.2.2響應(yīng)時間
8.2.3吞吐量
8.2.4每秒事務(wù)數(shù)
8.2.5點擊率
8.2.6資源利用率
8.3性能測試流程
8.4工具LoadRunner
8.4.1LoadRunner組成
8.4.2LoadRunner原理
8.4.3LoadRunner特點
8.4.4LoadRunner介紹
8.4.5LoadRunner常用函數(shù)
8.4.6完整的訂票腳本
8.5Web端性能測試實例
8.5.1性能測試計劃
8.5.2性能測試方案
8.5.3性能測試腳本
8.5.4執(zhí)行性能場景
8.5.5生成測試報告
第9章APP項目測試
9.1APP發(fā)展
9.2APP測試流程
9.3APP測試方法
9.3.1Android與iOS
9.3.2UI測試
9.3.3功能測試
9.3.4性能測試
9.3.5安全測試
9.3.6兼容性測試
9.3.7接口測試
9.3.8用戶體驗測試
9.4APP測試工具
9.4.1ADB
9.4.2AAPT
9.4.3Monkey
9.4.4DDMS
9.4.5Fiddler
9.5APP測試與Web測試的
區(qū)別
9.6H5頁面測試
附錄phpwind 9.0環(huán)境搭建
參考文獻