软件测试是一个逐渐兴起并被企业视为生命的重要工作。现在许多软件企业开始重视软件测试,越来越多的软件技术人员也投身于测试行业。自动化测试技术正逐渐进入软件测试人员的视野,它给软件测试人员带来了希望。
本书分为3篇共10章,包括基础知识篇、工具篇和项目案例篇。本书将逐步引领读者学习基础知识和各个工具的使用技法,最后将其贯穿并设计符合某公司特点的自动化测试流程。全书内容由浅入深,并辅以大量的实例说明,最后给出了一个完整的项目案例。
无
现在许多软件企业开始重视软件测试,越来越多的软件技术人员开始投身测试行业。在一些大型软件公司里,软件测试甚至比开发投入的资源还要多。目前,国内的软件测试人员大多数还停留在简单、重复的黑盒手动测试阶段,软件测试人员也常常觉得自己所从事的工作和计算机技术关系不大,只要了解产品的业务逻辑就可以完成工作。这也导致很多测试人员对本身的工作失去兴趣,同时也给企业管理者造成了“测试工作是没有技术含量的工作”的误解。
近年来自动化测试技术逐渐进入软件测试人员的视野。通过对比,人们逐渐发现:软件测试和软件开发一样具有挑战性、有技术含量。开发人员有自己的开发工具,软件测试人员同样也有像QTP、LoadRunner、Rational Robot等测试工具;开发人员有例如Java、C#等语言来编写代码,测试人员也有测试专用的语法来编写脚本、调试脚本;开发人员生产出来的产品可以为企业直接创造效益,测试人员通过质量手段防止更多的缺陷遗留给客户。因此软件测试再也不是一般非专业人员所能够胜任的,而是和软件开发一样具有技术含量、前景美好的职业。
随着CMMI、ISO等质量体系在国内的推广,软件企业逐渐对软件质量有了正确的认识。软件的缺陷是在生产过程中产生的,软件测试人员只能被动地进行检查、避免缺陷落入客户手中,而不能在真正意义上避免缺陷的产生,要想提高产品的质量就要通过全员的培训和过程改进来实现。一旦企业的管理人员真正认识到这一点,那么软件测试人员就不再是替罪羊,软件测试人员辛苦的劳动也就会得到真正的认可。
1本书的知识体系
学习CART全面的软件自动化回归测试流程最好要有一定的开发基础,另外最好对软件工程中的质量体系、配置管理、度量管理有所了解和认识。本书的知识体系结构如图1所示。本书以循序渐进的方式从理论知识讲起,然后介绍各个工具的使用方法,最后将其融会贯通于项目之中。
2章节内容介绍
本书分为三篇。第一篇基础知识分为6章,分别讲述软件工程和CART的基础知识。优秀的软件测试人员不能只了解测试技术,应该对软件工程的各个部分都有所认识,在大学学习的软件工程理论基本都比较浅显,如果读者没有经历过CMMI或ISO的专业培训,那么可以通过阅读本书的第1、第5、第6章的内容来增加了解。
第1章引导读者了解软件质量的基础知识,通过理解各位质量大师的观点来领悟软件测试的含义。在此基础上再对软件测试的几种常用方法进行讲解,使读者对软件质量的各个方面有所认识。
第2章讲述CART全面自动化回归测试流程的理论。通过与TDD开发模型的比较,使读者了解CART是将日构建技术和自动化回归技术相结合,采用白盒与黑盒互补的方式对产品进行彻底的自动化测试。
第3章具体讲述日构建的策略,使读者加强对构建过程的日常性和重要性的理解,为日构建过程在企业中的推广奠定理论依据。
第4章的内容是回归测试的策略,“回归测试”这个名词对软件测试人员应该都不陌生,但为什么要进行回归测试,进行回归测试有什么好处,很多测试人员的理解都不够深入,本章对其进行了全面的讲解。图1本书的知识体系结构
第5章讲解与配置管理相关的知识,配置管理是软件工程中的基础环节,也是CART全面自动化回归测试流程的基础,日构建过程其实就是配置管理范畴的一个部分。更好地理解配置管理可以使软件测试人员的日常工作条理清晰,和开发人员的沟通更加准确。
第6章的内容是度量管理,SQC软件测试人员的一个重要发展方向就是SQA软件质量保证工程师,软件测试人员要学会从测试结果中进行分析,灵活使用因果分析和帕累托理论来找到问题的根源,选择重要的问题优先解决,从源头减少缺陷的产生,从源头提高产品的质量。
根据以上理论知识,本书为读者选取了一套CART全面自动化回归测试流程所使用到的工具进行逐一讲解,使读者可以迅速掌握。第二篇为工具篇,分为3章,共介绍了7种测试工具和测试管理平台。
根据第5章配置管理的理论,在第7章选取了3种配置管理工具介绍给读者。SubVersion和TortoiseSVN的组合可以对公司范围内的文档进行管理。通过对NAnt工具的语法和指令的详解,将第3章日构建策略理论应用到实际的工作中。
第8章介绍了Test Director的配置和使用,读者可以通过对该平台的学习来设计一套符合本公司特点的测试管理流程,并且根据第6章的内容设计并收集测试度量的信息。
第9章以QTP、LoadRunner、NUnit三个测试工具为例,详细讲述了在测试领域内的回归测试、性能测试、单元测试的做法和应用,使读者对其增加更多的了解。
通过第一篇理论知识和第二篇工具使用技巧的学习,第三篇项目案例按照CART全面回归测试流程的要求,将以上知识和工具进行贯穿。以项目实例为主线进行讲解,使读者对其功效进行全面了解。
本书以微软 .Net开发环境为基础,选取了相应的测试工具和日构建工具。在Java环境下进行开发和测试的读者可以举一反三,选取相应的Ant、JUnit等工具来实现该自动化测试流程。
本书内容由浅入深,并辅以大量的实例说明,可以作为软件测试人员的参考用书,也可以作为软件职业培训的教材使用。缺乏软件测试知识和经验的读者可以通过迅速对软件测试拥有一个全面清晰的认识。随书光盘中含有本书所有实例的脚本,以及项目案例的源代码,供读者学习参考使用。
3技术支持
希赛是中国领先的互联网技术和IT教育公司,在互联网服务、图书出版、人才培养方面,希赛始终保持IT业界的领先地位。希赛对国家信息化建设和软件产业化发展具有强烈的使命感,利用希赛网(www.csai.cn)强大的平台优势,加强与促进IT人士之间的信息交流和共享,实现IT价值。“希赛,影响IT”是全体希赛人不懈努力和追求的目标!
希赛网以希赛顾问团为技术依托,是中国最大的IT资源平台。希赛IT教育研发中心是希赛公司属下的一个专门从事IT教育、教育产品开发、教育书籍编写的部门,在IT教育方面具有极高的权威性。在国家权威机构发布的《计算机图书出版市场综述》中,称希赛丛书为读者所称道,希赛的图书已经形成品牌,在读者心目中具有良好的形象。
本书由希赛顾问团顾问张瑾主编。江苏海纳英华科技的杜春晖先生承担了本书的部分校验和技术支持工作。希赛网邓子云、扶文奇、周进、肖佳等参与了全书的实例源代码调试工作,王冀、王勇、史小琴、陈倩、谢顺等参与了书中的项目案例的部分程序编制工作,梁赛负责了部分章节的校稿和编辑工作。
由于时间仓促和作者的水平有限,书中的错误和不妥之处在所难免,敬请读者批评指正。有关本书的意见反馈和咨询,读者可在希赛网IT社区(bbs.csai.cn)“书评在线”版块中的“机械工业出版社”栏目中与作者进行交流。本书配套光盘中的内容,读者可以在希赛网下载中心(data.csai.cn)下载。
4致谢
感谢广州德捷科技的领导和各位同仁,特别是测试团队全体成员;感谢机械工业出版社的陈冀康编辑,他承担了大量的策划与编辑工作;感谢希赛公司的邓子云先生和梁赛女士,他们给本书的编写提出了许多修改意见;借此还向我的夫人蔡觅致敬,她一直默默地支持我书稿的创作工作。正是因为这么多人的大力支持和辛勤汗水,本书才得以出版。
张瑾
2007年8月于广州
软件测试是一个逐渐兴起并被企业视为生命的重要工作。现在许多软件企业开始重视软件测试,越来越多的软件技术人员也投身于测试行业。自动化测试技术正逐渐进入软件测试人员的视野,它给软件测试人员带来了希望。 本书分为3篇共10章,包括基础知识篇、工具篇和项目案例篇。本书将逐步引领读者学习基础知识和各个工具的使用技法,最后将其贯穿并设计符合某公司特点的自动化测试流程。全书内容由浅入深,并辅以大量的实例说明,最后给出了一个完整的项目案例。
张瑾 杜春晖:暂无简介
目录
编写委员会
前言
第一篇基础知识篇
第1章软件质量概述211软件质量的理论3
12软件质量保证SQA与软件质量
控制SQC4
13软件质量的成本5
14软件质量的责任分工5
15软件质量的分析工具6
16常用测试方法8
17软件测试的现状和未来16
18小结17
19思考题17第2章CART自动化全面回归
测试模型1821CART全面的软件自动化回归
测试架构18
22CART全面的软件自动化回归
测试范例19
23TDD开发模型20
24CART与TDD模型的比较21
25全面软件质量保证最佳实践21
26小结22
27思考题22第3章日构建策略2331日构建的重要性23
32日构建的价值24
33自动化的必要性24
34软件配置管理的重要性25
35建立自动化日构建的制度26
36CART的自动化日构建流程26
37小结28
38思考题28第4章回归测试策略2941回归测试的优势29
42Web自动化回归测试的步骤30
43CART自动化回归测试的流程31
44自动化回归测试最佳实践32
45小结32
46思考题32第5章软件配置管理3351配置管理职责分工33
52配置管理工作内容34
53小结38
54思考题38第6章软件度量管理3961度量的要素39
62如何收集度量40
63如何进行度量41
64常用度量指标和方法43
65常用度量分析规程及指示器50
66小结50
67思考题51第二篇工具篇
第7章软件配置管理工具5471SubVersion54
72TortoiseSVN58
73NAnt66
74小结76
75思考题76第8章软件质量管理平台Test
Director7781Site Administrator站点管理平台78
82Test Director测试过程管理平台88
83Customize测试项目管理平台105
84小结120
85思考题120第9章软件自动化测试工具12191Quick Test Professional121
92NUnit155
93LoadRunner181
94小结207
95思考题207
第三篇项目案例篇
第10章自动化测试项目案例210101RUP迭代式开发流程概述210
102项目案例需求概述215
103创建VSS数据库217
104使用NUnit进行单元测试220
105使用NAnt实现自动化日构建
流程225
106使用NAnt进行白盒自动化回归
测试228
107录制QTP测试脚本230
108录制LoadRunner脚本237
109利用TD Customize配置测试管理
流程241
1010使用TD进行测试管理245
1011小结250附录A软件配置管理模板251附录B软件度量管理模板267附录C思考题答案271