作者王兴亚、王智钢、赵源、陈振宇 著
出版社机械工业出版社
出版时间2019-01
版次1
装帧平装
货号9787111616818
上书时间2024-12-17
商品详情
- 品相描述:八五品
图书标准信息
-
作者
王兴亚、王智钢、赵源、陈振宇 著
-
出版社
机械工业出版社
-
出版时间
2019-01
-
版次
1
-
ISBN
9787111616818
-
定价
59.00元
-
装帧
平装
-
开本
16开
-
纸张
胶版纸
-
页数
191页
-
字数
100千字
-
丛书
软件工程技术丛书
- 【内容简介】
-
本书从开发者测试的角度,介绍了软件测试的产生与发展以及开发者与测试的关系;讲述了程序静态分析、逻辑覆盖测试、程序插桩与变异测试等开发者需要掌握的测试方法和技术;结合示例讲解了单元测试、集成测试中开发者应当要能发现和避免的各种问题;由浅入深,介绍了测试工具JUnit的使用;*后介绍了由慕测科技提供的开发者测试平台和全国大学生软件测试大赛。
- 【作者简介】
-
:
王兴亚,南京大学软件工程博士后流动站博士后,主要从事软件测试与分析研究。在中国科学、计算机学报、ICSE、SANER等期刊和会议发表论文20余篇,申请发明专利10余项(已授权5项)。
精彩内容:
当前,信息需求的持续增长和信息技术的快速发展加快了软件产品的研发速度,同时也大大增加了软件产品的测试压力。以互联网、移动应用等产品为例,众多软件公司普遍采用微小改进、快速迭代、反馈收集、及时响应等手段来提高软件的迭代速度,缩短软件产品的发布流程。显然,仅仅依赖测试人员已经难以满足市场和客户对产品质量的需求,这就要求开发人员也深入参与到软件测试过程中,与测试人员共同完成软件产品的质量保证工作。在本书中,我们定义由开发者承担的与代码相关的软件测试工作为开发者测试。本书从开发者测试出现的背景与意义、开发者所应掌握的基本和高级程序分析方法以及软件测试技术、开发者所应掌握的软件测试分析辅助工具、用于开发者测试教学和竞赛的慕测平台等多个方面对开发者测试进行系统性介绍。相信通过本书的学习,读者可以对开发者参与测试的必要性、开发者测试所涵盖的内容有初步的认识和了解,同时能够结合本书的示例及平台锻炼自己的测试能力。本书适用于两类不同的读者:1)在高等院校学习和工作的教师和学生,本书有助于他们理解和认识测试工作承担者的责任,并为他们学习和锻炼自身的测试能力提供方向和平台;2)软件产业的开发人员、测试人员和管理人员,本书有助于他们认识开发者在测试工作中的重要性和所应承担的工作内容,以及开发者所应具备的测试技能。本书讲述的方法是通用的,可以用于测试任何类型的计算机软件。但是,为了使读者更好地理解和学习本书的开发者测试方法,本书提供了大量Java示例代码以及面向Java的程序分析、测试工具。这些示例和工具可以在任何支持Java的操作系统(如Windows、Linux、Mac)、开发环境(如Eclipse、IntelliJ、Sublime Text)中开发、测试和运行。本书共包含8章及一个附录,除第7章与第8章外,其他章节的内容互不相关,因而读者可选择其中部分章节进行阅读。第1章:开发者测试概述。本章
...
- 【目录】
-
前 言
第1章 开发者测试概述 1
1.1 开发者与软件测试 1
1.1.1 测试和调试 1
1.1.2 开发者测试 3
1.1.3 PIE模型 4
1.2 开发者测试方法与技术 6
1.2.1 静态测试与动态测试 6
1.2.2 黑盒测试与白盒测试 8
1.2.3 失效重现 9
1.3 开发者测试工具 9
1.3.1 静态测试扫描工具 9
1.3.2 测试覆盖分析工具 12
1.4 开发者测试趋势 14
1.4.1 软件开发和运营困境 14
1.4.2 DevOps介绍 16
1.4.3 DevOps中的开发者测试 17
1.5 慕测开发者测试 19
1.6 小结 27
习题1 28
第2章 程序静态分析 29
2.1 程序静态分析概述 29
2.1.1 代码评审 30
2.1.2 结构分析 31
2.2 程序流程分析 32
2.2.1 控制流分析 32
2.2.2 数据流分析 33
2.3 符号执行 35
2.3.1 静态符号执行 36
2.3.2 动态符号执行 38
2.4 编程规范和规则 39
2.5 程序静态分析工具 42
2.5.1 工具简介 42
2.5.2 工具安装与评估 42
2.6 小结 48
习题2 48
第3章 白盒测试 50
3.1 逻辑覆盖测试 50
3.1.1 语句覆盖 52
3.1.2 分支覆盖 54
3.1.3 条件覆盖 56
3.1.4 条件/判定覆盖 58
3.1.5 修正条件/判定覆盖 61
3.1.6 条件组合覆盖 63
3.2 路径覆盖测试 65
3.2.1 环复杂度 65
3.2.2 基本路径覆盖 66
3.2.3 主路径覆盖 69
3.2.4 循环结构测试 72
3.3 小结 74
习题3 74
第4章 程序插桩与变异测试 77
4.1 程序插桩 77
4.1.1 程序插桩概述 77
4.1.2 程序插桩示例 78
4.1.3 程序插桩工具JaCoCo 79
4.2 变异测试 84
4.2.1 变异测试概述 84
4.2.2 变异测试方法 85
4.2.3 变异测试工具PITest 89
4.3 小结 91
习题4 91
第5章 单元测试 94
5.1 单元测试概述 94
5.2 单元测试框架 95
5.3 单元测试内容 96
5.3.1 算法逻辑 96
5.3.2 模块接口 97
5.3.3 数据结构 97
5.3.4 边界条件 98
5.3.5 独立路径 98
5.3.6 错误处理 99
5.3.7 输入数据 99
5.3.8 表达式与SQL语句 100
5.4 慕测单元测试实例 100
5.5 小结 102
习题5 103
第6章 集成测试 105
6.1 集成测试概述 105
6.1.1 集成测试过程 106
6.1.2 集成测试缺陷类型 107
6.2 集成测试分析 110
6.3 集成测试策略 112
6.3.1 一次性集成与增量式集成 112
6.3.2 自顶向下与自底向上集成 114
6.3.3 基于调用图的集成 117
6.3.4 其他集成测试策略 118
6.4 小结 124
习题6 124
第7章 JUnit基础 127
7.1 一个JUnit实例 127
7.2 注解 132
7.3 测试类与测试方法 135
7.3.1 Assert 135
7.3.2 TestCase 139
7.3.3 TestResult 141
7.3.4 TestSuite 142
7.4 错误与异常处理 143
7.4.1 错误和异常 143
7.4.2 异常处理 144
7.5 批量测试 146
7.5.1 参数化测试 146
7.5.2 打包测试 149
7.6 小结 150
练习7 150
第8章 JUnit深入应用 152
8.1 匹配器 152
8.2 JUnit测试进阶 154
8.2.1 Controller测试 154
8.2.2 Stup测试 155
8.2.3 Mock测试 159
8.2.4 Private测试 162
8.3 JUnit集成 165
8.3.1 JUnit-Ant集成 165
8.3.2 JUnit-Maven集成 169
8.4 小结 171
练习8 171
附录 慕测科技—开发者测试平台 172
参考文献 192
点击展开
点击收起
— 没有更多了 —
以下为对购买帮助不大的评价