出版时间:2010-4 出版社:周元哲 机械工业出版社 (2010-04出版) 作者:周元哲 页数:245
前言
随着软件的规模和复杂性的大幅提升,如何保证软件质量的可靠性变得日益重要。软件测试是保证软件质量的关键技术之一,同时也是软件开发过程中的一个重要环节,其理论知识和技术工具都在不断更新。软件测试从软件工程中演化而来,并且还在不断的发展之中。在学习本书之前,需要一些先行知识(如一门高级语言、数据库、数据结构,以及软件工程的基本理论知识等)作为支撑。本书较为全面地涵盖了当前测试领域的专业知识,追溯了软件测试的发展史,反映了当前最新的软件测试理论、标准、技术和工具,展望了软件测试的发展趋势。全书共分10章,主要内容包括软件工程与软件测试、软件测试概论、软件测试基本知识、软件测试过程、黑盒测试、白盒测试、自动测试技术及其工具、性能测试、面向对象测试、软件测试管理,并在附录中列举了软件测试面试题、Yahoo测试真实案例以及软件评测师考试的相关内容。本书内容精练、文字简洁、结构合理、综合性强,并明确面向初、中级读者,由“入门”起步,侧重“提高”。在本书的编写过程中,作者与软件公司的友人进行了大量深入的讨论,其中,神州数码融信软件有限公司西安开发中心技术总监马明全博士、Yahoo测试负责人蔡雪尽女士和深圳市易思博信息技术有限公司西安分公司李荣生经理等软件企业人士对本书的写作大纲、写作.风格提出了很多宝贵的意见。西安邮电学院计算机学院王忠民教授、王曙燕教授、陈莉君教授对本书的编写也给予了大力的支持,并提出了指导性意见。中原工学院计算机学院刘卫光副院长,西安电子科技大学计算机学院段振华博导、鱼滨教授,以及西安邮电学院实训中心的孟伟君、宋辉等审阅了部分书稿。在此对以上人士一并表示感谢!本书在写作过程中参阅了大量中外文的专著、教材、论文、报告及网上的资料,在此向各位作者表示诚挚的敬意和衷心的感谢!由于作者水平有限,书中难免有不足之处,恳请广大读者批评指正。
内容概要
《软件测试教程》较为全面、系统地介绍了当前测试领域的理论和实践知识,反映了当前最新的软件测试理论、标准、技术和工具,展望了软件测试的发展趋势。全书共分10章,主要内容包括软件工程与软件测试、软件测试概论、软件测试基础知识、软件测试过程、黑盒测试、白盒测试、自动化测试技术及其工具、性能测试、面向对象测试和软件测试管理,并在附录中列举了软件测试面试题、Yahoo真实测试案例,以及软件评测师考试的相关内容。 《软件测试教程》可作为高等院校相关专业软件测试的教材或教学参考书,也可作为从事计算机应用开发的各类技术人员的参考书,还可作为全国计算机软件评测师考试、软件技术资格与水平考试的培训资料。
书籍目录
出版说明前言第1章 软件工程与软件测试1.1 软件1.1.1 软件的发展史1.1.2 软件的生命周期1.2 软件过程1.2.1 RUP1.2.2 敏捷过程1.3 软件缺陷1.3.1 缺陷1.3.2 缺陷后果1.3.3 缺陷分析方法1.3.4 与缺陷相关的几个概念1.4 软件质量1.4.1 简介1.4.2 质量模型1.4.3 质量管理1.4.4 CMM/CMMI1.4.5 质量与测试1.5 软件测试与软件开发的关系1.6 思考题第2章 软件测试概论2.1 关于测试的几种观点2.2 测试发展历程2.3 测试行业现状2.4 软件测试职业2.4.1 测试岗位的职能2.4.2 测试人员的素质2.5 测试用例2.5.1 简介2.5.2 测试用例的设计准则2.5.3 测试用例的设计步骤2.5.4 测试用例的内容及维护2.5.5 测试用例的设计误区2.6 与测试相关的几个概念2.6.1 排错2.6.2 验证与确认2.7 测试认识的误区2.8 思考题第3章 软件测试基础知识3.1 软件的可测试性与测试目的3.2 软件测试分类3.2.1 按照开发阶段划分3.2.2 按照执行主体划分3.2.3 按照执行状态划分3.2.4 按照测试技术划分3.3 软件测试模型3.3.1 V模型3.3.2 W模型3.3.3 H模型3.3.4 X模型3.3.5 前置模型3.3.6 测试模型总结3.4 两个“3”3.4.1 测试3维空间3.4.2 测试驱动的3种方法3.5 软件测试注意事项3.6 终止软件测试的标准3.7 思考题第4章 软件的测试过程4.1 概述4.2 测试计划4.2.1 测试计划的内容4.2.2 一些关键问题4.3 测试设计4.4 测试实施过程4.4.1 单元测试4.4.2 集成测试4.4.3 确认测试4.4.4 系统测试4.4.5 验收测试4.4.6 回归测试4.4.7 小结4.5 评估测试4.5.1 评估测试的方法4.5.2 评估测试的内容4.6 思考题第5章 黑盒测试5.1 概述5.2 等价类划分5.2.1 划分原则5.2.2 应用实例5.3 边界值分析法5.3.1 设计原则5.3.2 应用实例5.4 功能图测试5.5 随机数据法5.6 元素分析法与错误推测法5.7 决策表5.7.1 应用实例5.7.2 优点和缺点5.8 因果图5.8.1 基本术语5.8.2 测试用例的生成步骤5.8.3 应用实例5.9 测试方法的综合使用策略5.1 0GUI测试5.10.1 GUI测试的10条原则5.10.2 GUI测试步骤5.11 测试工具QTP5.12 GUI捕捉/回放实例5.12.1 采用原理5.12.2 具体实现5.13 思考题第6章 白盒测试6.1 概述6.2 白盒测试的发展历程6.3 逻辑覆盖法6.3.1 语句覆盖6.3.2 判定覆盖6.3.3 条件覆盖6.3.4 判定-条件覆盖6.3.5 条件组合覆盖6.3.6 路径覆盖6.3.7 逻辑覆盖法总结6.4 结构性测试6.4.1 数据流测试6.4.2 基本路径测试6.5 控制结构测试6.5.1 条件测试6.5.2 循环测试6.6 程序插桩6.7 其他测试方法6.8 白盒测试综合策略6.8.1 最小测试用例数的计算6.8.2 覆盖准则6.9 调试6.9.1 调试策略6.9.2 3种调试技术6.10 思考题第7章 自动化测试及其工具7.1 自动化测试7.1.1 自动化测试的作用7.1.2 自动化测试的应用场合7.2 自动化测试的发展历程7.3 测试成熟度模型7.4 自动化测试的属性7.5 自动化测试的原理7.5.1 代码分析7.5.2 录制回放7.5.3 脚本技术7.5.4 虚拟用户技术7.6 自动化测试生存周期方法学7.7 自动化测试工具7.7.1 简介7.7.2 自动化测试工具的分类7.7.3 测试工具的特征7.7.4 测试工具的选择7.8 JUnit7.8.1 JUnit的安装7.8.2 JUnit的特点……第8章 性能测试 第9章 面向对象的测试 第10章 软件测试管理 附录 参考文献
章节摘录
插图:本章介绍了软件的发展史、当前流行的软件过程模型、软件缺陷和软件故障的概念、软件质量及质量保证体系的概念,软件测试与软件开发过程的关系等理论知识,为学习本书的后续内容做了准备。1.1 软件软件是一系列按照特定顺序组织的计算机数据和指令的集合。它并不只是计算机上运行的程序代码,还包括数据结构和文档等。一般地,软件包括如下内容:1)运行时,能够提供所要求功能和性能的指令或计算机程序集合。2)程序能够满意地处理信息的数据结构。3)描述程序功能需求以及程序如何操作和使用所要求的文档。1.1.1软件的发展史软件的发展经历了如下几个阶段:20世纪50年代初期至60年代中期,是软件发展的第1阶段,又称为程序设计阶段。此时硬件已经通用化,而软件的生产却是个体化的。软件产品为专用软件,规模较小,功能单一,开发者即使用者,软件只有程序,无文档。软件设计在人们的头脑中完成,形成了“软件等于程序”的错误观念。第2阶段从20世纪60年代中期至70年代末期,称为程序系统阶段。此时,随着多道程序设计技术、多用户系统、人机交互式技术、实时系统和第1代数据库管理系统的出现,专门从事软件开发的“软件作坊”广泛应用,但软件技术和管理水平相对落后,导致“软件危机”出现。软件危机主要表现在以下几个方面:1)软件项目无法按期完成,超出经费预算,软件质量难以控制。2)开发过程管理不规范,文档书写不完整,使得软件维护费用高。3)缺乏严密有效的质量检测手段,交付给用户的软件质量差,在运行中出现许多问题,甚至带来严重的后果。4)系统更新换代难度大。第3阶段称为软件工程阶段,从20世纪70年代中期至80年代中期,由于微处理器的出现、分布式系统广泛应用,使得计算机真正成为大众化的东西。以软件的产品化、系列化、工程化和标准化为特征的软件产业发展起来,软件开发有了可以遵循的软件工程化的设计准则、方法和标准。1968年,北大西洋公约组织的计算机科学家在联邦德国召开了国际会议,主要讨论软件危机问题,正式提出并使用“软件工程”概念,这标志着软件工程的诞生。
编辑推荐
《软件测试教程》:高等院校规划教材软件工程系列
图书封面
评论、评分、阅读与下载