作为保证软件质量的重要手段,软件测试在日新月异的科技发展中越来越重要,本书作为软件测试入门书籍,不同于市面上的纯理论知识讲解,而是将软件测试理论与实践充分结合,让读者既掌握理论知识又具备动手能力。
本书共分为9个章节:第1章讲解软件测试的基础知识体系;第2~3章讲解黑盒测试与白盒测试方法;第4~7章分别讲解性能测试、安全测试、自动化测试、移动App测试相关知识;第8~9章以一个项目为例,讲解各种测试文档的编写。
本书作为软件测试入门教材,可作为高等院校本、专科计算机相关专业的软件测试技术教材,也可作为软件测试技术基础的培训教材,是一本适合广大计算机编程爱好者的优秀读物。
1、 “理论+实践”相结合,循序渐进阐述软件测试基础理论的同时,更注重软件测试的实用性。
2、 将技术赋予实际应用场景,可以更清晰把握如何将技术运用于实际应用。
3、 综合项目实战,完整呈现软件测试流程和场景。
4、配套资源丰富,免费提供教学PPT、大纲、教学设计、题库、视频等资源
第1章软件测试基础 001 1.1 软件概述 002 1.1.1 软件生命周期 002 1.1.2 软件开发模型 003 1.1.3 软件质量概述 007 1.2 软件缺陷管理 009 1.2.1 软件缺陷产生的原因 010 1.2.2 软件缺陷的分类 010 1.2.3 软件缺陷的处理流程 011 1.2.4 常见的软件缺陷管理工具 012 1.3 软件测试概述 013 1.3.1 软件测试简介 013 1.3.2 软件测试的目的 014 1.3.3 软件测试的分类 014 1.4 软件测试与软件开发 017 1.4.1 软件测试与软件开发的关系 017 1.4.2 常见的软件测试模型 018 1.5 软件测试的原则 021 1.6 软件测试的基本流程 022 1.6.1 软件测试的流程 022 1.6.2 实例:摩拜单车App开锁用车 功能测试流程 025 1.7 本章小结 028 1.8 本章习题 029 第2章黑盒测试方法 031 2.1 等价类划分法 032 2.1.1 等价类划分法概述 032 2.1.2 实例:三角形问题的等价类 划分 033 2.1.3 实例:余额宝提现的等价类 划分 035 2.2 边界值分析法 037 2.2.1 边界值分析法概述 037 2.2.2 实例:三角形问题的边界值 分析 038 2.2.3 实例:余额宝提现的边界值 分析 038 2.3 因果图与决策表法 039 2.3.1 因果图设计法 039 2.3.2 决策表 041 2.3.3 实例:三角形决策表 044 2.3.4 实例:工资发放决策表 045 2.4 正交实验设计法 047 2.4.1 正交实验设计法概述 047 2.4.2 实例:微信Web页面运行环境 正交实验设计 049 2.5 本章小结 051 2.6 本章习题 051 第3章白盒测试方法 052 3.1 逻辑覆盖法 053 3.1.1 语句覆盖 053 3.1.2 判定覆盖 054 3.1.3 条件覆盖 055 3.1.4 判定-条件覆盖 055 3.1.5 条件组合覆盖 056 3.1.6 实例:三角形逻辑覆盖问题 057 3.2 程序插桩法 059 3.2.1 目标代码插桩 059 3.2.2 源代码插桩 060 3.2.3 实例:求3个数的中间值 062 3.3 本章小结 066 3.4 本章习题 066 第4章性能测试 068 4.1 性能测试概述 069 4.2 性能测试的指标 070 4.3 性能测试的种类 071 4.4 性能测试的流程 072 4.5 性能测试工具 074 4.5.1 LoadRunner 074 4.5.2 JMeter 075 4.6 实例:网站负载测试 076 4.6.1 LoadRunner的安装 076 4.6.2 项目准备工作 081 4.6.3 使用VuGen录制脚本 082 4.6.4 使用Controller设计场景 091 4.6.5使用Analysis分析测试结果 096 4.7 本章小结 099 4.8 本章习题 099 第5章安全测试 101 5.1 安全测试概述 102 5.1.1 什么是安全测试 102 5.1.2 安全测试的基本原则 103 5.2 常见的安全漏洞 104 5.2.1SQL注入 104 5.2.2XSS跨站脚本攻击 104 5.2.3 CSRF攻击 105 5.3 渗透测试 106 5.3.1 什么是渗透测试 106 5.3.2 渗透测试的流程 107 5.4 常见的安全测试工具 108 5.5 实例:测试传智播客图书库的 安全性 110 5.5.1 AppScan安装 110 5.5.2 扫描传智播客图书库的安全 漏洞 113 5.6 本章小结 120 5.7 本章习题 120 第6章自动化测试 122 6.1 自动化测试概述 123 6.1.1 什么是自动化测试 123 6.1.2 自动化测试的基本流程 124 6.1.3 自动化测试实施策略 125 6.1.4 自动化测试的优势和劣势 125 6.2 自动化测试常见技术 126 6.3 自动化测试常用工具 127 6.4 持续集成测试 128 6.4.1 持续集成的概念 128 6.4.2 持续集成测试框架设计 129 6.5 实例:博学谷在线教育平台测试 131 6.5.1 测试环境准备 131 6.5.2 博学谷网页元素定位 131 6.5.3 测试登录和退出功能 134 6.5.4 测试网页跳转 135 6.6 本章小结 137 6.7 本章习题 137 第7章移动App测试 139 7.1 移动App测试概述 140 7.2 移动App测试要点 141 7.2.1 UI测试 141 7.2.2 功能测试 142 7.2.3 专项测试 143 7.2.4 性能测试 144 7.3 移动App测试流程 145 7.4 移动App测试工具 146 7.5 实例:使用Appium测试App—— 手机安全卫士 149 7.5.1 测试环境准备 149 7.5.2 手机安全卫士UI测试 150 7.5.3 手机安全卫士功能测试—— 手机杀毒 155 7.6 本章小结 158 7.7 本章习题 158 第8章在线考试系统(上) 160 8.1 项目简介 161 8.2 测试需求说明书 162 8.3 测试需求评审 166 8.4 测试计划 166 8.5 测试方案 172 8.6 测试用例 176 8.7 本章小结 181 第9章在线考试系统(下) 182 9.1 测试脚本 183 9.2 测试报告 185 9.3 缺陷报告 193 9.4 本章小结 198