热门关键字:  听力密码  单词密码  新概念美语  巧用听写练听力  零起点

软件测试技术

中国水利水电出版社
    【作 者】曲朝阳 等编著 【I S B N 】978-7-5084-3929-7 【责任编辑】郭东青 【适用读者群】本科 【出版时间】2008-02-01 【开 本】16开本 【装帧信息】平装(光膜) 【版 次】第1版 【页 数】380 【千字数】 【印 张】 【定 价】34 【丛 书】21世纪高等院校计算机系列教材 【备注信息】
图书详情

    本书详尽地阐述了软件测试领域中的一些基本理论和实用技术。首先从软件测试的基本原则,以及常用的软件测试技术入手,介绍了与软件测试领域相关的基础知识。然后,分别从单元测试、集成测试和系统测试3个层面深入分析了如何选择和设计有效的测试用例,制定合适的测试策略等主题。最后,讨论了面向对象的软件测试和软件测试自动化技术。附录中还收录了常见的软件错误,供读者参阅。

    本书作为软件测试的实际应用参考书,除了力求突出基本知识和基本概念的表述外,更注重软件测试技术的运用,在介绍诸多知识点的过程当中结合直观形象的图表或实际案例进行深入浅出的分析,从而使读者可以更好地理解和掌握软件测试理论知识,并迅速地运用到实际测试工作中去。

    本书适合作为各层次高等院校计算机及相关专业的教学用书,也可作为软件测试人员的参考书。

    本书作为软件测试的实际应用参考书,除了力求突出基本知识和基本概念的表述外,更加注重软件测试技术的运用,在介绍很多知识点的过程当中都结合直观形象的图表或实际案例进行深入浅出的分析,从而使读者可以更好地理解和掌握软件测试技术理论知识,并迅速地运用到实际测试工作中去。

    随着信息技术的普及,各种各样的软件已经应用到很多领域,软件设计的复杂程度逐渐增加,开发周期不断缩短。而用户对软件的要求却愈来愈高,不再仅仅关注软件产品功能的先进性,还十分重视对产品质量的稳定性和可靠性的考察,这使得软件开发人员和软件测试人员面临着前所未有的挑战。因此,如何保证软件质量将成为软件工程领域深入研究的课题。

    毋庸置疑,优化软件开发过程和提高软件测试人员的技术水平,是保证软件质量的最佳途径,这种观念正在被更多的软件行业人士理解、接受和实施。但软件测试在国内仍处于起步阶段,各种软件测试的方法、技术和标准都还在探索阶段。可以说当今中国的软件测试行业正处于“春秋战国”时期,百家争鸣。一方面,这给行业的创新和发展提供了营养丰富的土壤;另一方面,在测试行业一派“欣欣向荣”的气象背后,也隐藏着巨大的危机。软件质量和测试观点“良莠不齐”,“泥沙俱下”。

    在这种情况下,很多高校为了培养更多软件行业急需的软件测试人才,都已开设了软件测试课程,但目前适用于高校教学的软件测试技术方面的教材还寥寥无几。因此,为了适应当前教学的需要,编者在软件测试课程实践的基础上,结合当前软件测试技术的最新发展动态编写了本书。

    本书作为软件测试的实际应用参考书,除了力求突出基本知识和基本概念的表述外,更加注重软件测试技术的运用,在介绍很多知识点的过程当中都结合直观形象的图表或实际案例进行深入浅出的分析,从而使读者可以更好地理解和掌握软件测试技术理论知识,并迅速地运用到实际测试工作中去。

    本书参考教学时数为32~40学时。全书共分8章:第1章讨论了软件测试的发展历史、软件测试的定义和基本原则;第2章介绍了软件测试的基础知识;第3~5章结合本书所提供的案例分别介绍了与单元测试、集成测试和系统测试相关的知识以及具体的实施过程;第6章介绍了面向对象的软件测试,讨论了面向对象软件测试和传统软件测试的区别,介绍了面向对象软件测试的层次、测试用例和测试驱动程序的设计方法,以及面向对象软件测试的工具Junit;第7章介绍了软件测试自动化,讨论了自动化测试的时机,自动化测试成本的衡量,自动化测试工具的选择和使用;第8章介绍了关于软件BUG及其管理方面的知识,讨论了软件BUG的分类、提交和管理相关的知识。

    本书由曲朝阳教授和刘志颖副教授共同编写,李楠、于海洋与杨杰明等老师完成了本书的校对工作,李佳、王敬东与张金伟等研究生为本书的实例做了大量的调试工作,在此一并致谢。

    本书在编写过程中,参阅了很多国内外同行的著作或文章,汲取了该领域最新的研究成果。在此,对这些成果的作者表示深深的感谢!

    由于编者水平有限,书中难免存在一些错误和不妥之处,希望广大读者批评指正。

    编者

    2006年7月

    前言
    第1章 概述 1
    1.1 软件测试的发展历程及现状 1
    1.1.1 软件测试的发展历程 1
    1.1.2 软件测试的现状 2
    1.2 什么是软件测试 2
    1.2.1 软件测试的定义 2
    1.2.2 软件测试生命周期 3
    1.2.3 软件开发与测试模型 4
    1.2.4 与软件测试相关的术语 7
    1.3 软件测试技术分类 8
    1.4 软件测试的目的 13
    1.5 软件测试的原则 14
    1.5.1 尽早地和不断地进行软件测试 14
    1.5.2 不可能完全地测试 15
    1.5.3 增量测试,由小到大 18
    1.5.4 避免测试自己的程序 18
    1.5.5 设计周密的测试用例 19
    1.5.6 注意错误集中的现象 22
    1.5.7 确认BUG的有效性 22
    1.5.8 合理安排测试计划 23
    1.5.9 回归测试 23
    1.5.10 测试结果的统计和分析 24
    1.5.11 及时更新测试 24
    1.6 软件测试工作流程 24
    1.7 软件测试中的误区 27
    1.8 一个贯穿全书的例子——电厂两票管理系统 30
    1.8.1 系统简介 30
    1.8.2 系统运行环境 31
    1.8.3 系统总体结构 31
    1.8.4 系统功能 32
    本章小结 38
    习题 39
    第2章 软件测试基础 40
    2.1 用于测试的离散数学和图论基础 40
    2.1.1 集合论 40
    2.1.2 函数 42
    2.1.3 关系 43
    2.1.4 命题逻辑 45
    2.1.5 概率论 47
    2.1.6 用于测试的图 47
    2.2 白盒测试 51
    2.2.1 白盒测试与调试的异同 53
    2.2.2 白盒测试的用例设计 54
    2.2.3 白盒测试举例 62
    2.3 黑盒测试 66
    2.3.1 黑盒测试和白盒测试的异同 66
    2.3.2 黑盒测试的用例设计 68
    2.3.3 黑盒测试举例 75
    2.4 白盒测试和黑盒测试的比较 77
    2.4.1 白盒测试的优缺点 78
    2.4.2 黑盒测试的优缺点 78
    2.4.3 灰盒测试 79
    2.5 测试方法的选择 79
    2.6 测试计划与测试文档 80
    2.6.1 测试计划的制定 82
    2.6.2 测试报告 88
    2.6.3 测试用例的编制 94
    本章小结 97
    习题 97
    第3章 单元测试 99
    3.1 单元测试概述 99
    3.1.1 单元测试误区 101
    3.1.2 单元测试与集成测试的区别 104
    3.1.3 单元测试与系统测试的区别 104
    3.2 单元测试环境 104
    3.3 单元测试策略 106
    3.3.1 自顶向下的单元测试策略 106
    3.3.2 自底向上的单元测试 107
    3.3.3 孤立测试 107
    3.3.4 综合测试 108
    3.4 单元测试分析 110
    3.5 单元测试用例设计 113
    3.6 单元测试过程 123
    3.7 单元测试举例 127
    3.8 单元测试经验总结 142
    本章小结 143
    习题 143
    第4章 集成测试 144
    4.1 集成测试概述 144
    4.1.1 集成测试与系统测试的区别 145
    4.1.2 集成测试与开发的关系 145
    4.1.3 集成测试的重点 146
    4.1.4 集成测试的层次 146
    4.2 如何进行集成测试 147
    4.2.1 集成测试分析 147
    4.2.2 集成测试策略 152
    4.2.3 集成测试环境 168
    4.2.4 集成测试用例设计 170
    4.2.5 集成测试过程 173
    4.2.6 集成测试举例 175
    4.3 集成测试经验总结 180
    本章小结 180
    习题 181
    第5章 系统测试 182
    5.1 系统测试概述 182
    5.1.1 什么是系统测试 182
    5.1.2 系统测试的组织和分工 183
    5.2 如何进行系统测试 183
    5.2.1 系统测试分析 184
    5.2.2 系统测试环境 185
    5.2.3 系统测试类型 186
    5.2.4 系统测试用例设计 200
    5.2.5 系统测试执行 201
    5.2.6 系统测试案例研究 203
    5.3 系统测试经验总结 214
    本章小结 215
    习题 215
    第6章 面向对象软件的测试 216
    6.1 面向对象的测试与传统测试的比较 216
    6.1.1 信息隐蔽对测试的影响 218
    6.1.2 封装和继承对测试的影响 218
    6.1.3 多态性对测试的影响 218
    6.2 类测试基础 219
    6.2.1 类在UML中的描述 220
    6.2.2 类测试的价值 220
    6.2.3 类测试用例设计 221
    6.2.4 类测试驱动程序设计 228
    6.3 类测试的延伸 232
    6.4 面向对象测试的层次 238
    6.5 Junit简介 239
    6.6 经验总结 250
    本章小结 250
    习题 251
    第7章 软件测试自动化 252
    7.1 进行自动化测试的适当时机 252
    7.1.1 概述 252
    7.1.2 自动化测试的成本 253
    7.1.3 自动化测试的生命周期 254
    7.1.4 自动化测试的价值 257
    7.1.5 例子 259
    7.1.6 另外一些需要考虑的问题 261
    7.2 自动化测试和手工测试比较 262
    7.2.1 自动化测试与手工测试的比较 262
    7.2.2 短测试周期中手工测试面临的挑战 263
    7.2.3 手工测试的问题 263
    7.2.4 自动化测试的问题 264
    7.2.5 自动化测试的优点 264
    7.2.6 自动化测试的缺点 265
    7.3 自动化测试工具的选择和使用 266
    7.3.1 应用自动化测试工具的目的 266
    7.3.2 自动化测试工具的概要介绍 266
    7.3.3 自动化测试工具的选择 270
    7.3.4 自动化测试工具在测试过程中的应用 271
    7.4 性能测试实例 272
    7.4.1 LoadRunner简介 272
    7.4.2 案例分析 272
    7.5 经验总结 276
    本章小结 277
    习题 278
    第8章 软件BUG和管理 279
    8.1 软件BUG概述 279
    8.1.1 BUG的影响 279
    8.1.2 BUG的产生 281
    8.2 BUG的种类 283
    8.2.1 需求阶段的BUG 284
    8.2.2 分析设计阶段的BUG 284
    8.2.3 实现阶段的BUG 285
    8.2.4 配置阶段的BUG 287
    8.2.5 短视将来的BUG 288
    8.2.6 静态文档的BUG 288
    8.3 BUG报告单的提交和管理 288
    8.3.1 BUG报告单的内容 288
    8.3.2 BUG报告的特点 294
    8.3.3 重现BUG的分析和方法 295
    8.3.4 BUG管理流程 301
    本章小结 305
    习题 306
    附录A 软件测试常用术语表 307
    附录B 软件常见错误 321
    参考文献 367
    参考资料 368
最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册