所有连载内容,都经过了原作者授权,希望把知识以电子版的形式分享给大家。
由于我们很难把书籍上面的内容一比一完全还原,甚至可能会发生编辑错误的地方,如果您发现了问题,还请联系我们。
另外,如果您对连载书籍感兴趣的话,可以同时购买正版图书,一是支持作者,二是可以随时做笔记并且同步学习。
本书可以在京东、淘宝、天猫、当当、书籍出版社、线下书店等任何可以购买书籍的渠道购买。如果您想要图书作者亲笔签名版图书,也可以联系我们,原价邮寄,不收取任何额外费用。
很高兴您选择了本书,在本章节,我将站在巨人的肩上(首先真心感谢他们的贡献,没有他们,成就不了现在的我们)向大家介绍一款新的软件测试模型“川模型”,当然,该模型还在初步研究阶段,我的意图是给所有的读者和朋友一些实际测试工作方式的启迪,甚至通过本章节的内容,结实更多的有志于为我们的软件测试事业贡献力量的朋友,一起完善一套更符合现在科技发展大潮下的测试思路。该模型是我在2014年首次提出,并在2016年发表了“对软件测试川模型的初步研究”的论文,但是我想说的是,经过这几年的发展,他已经不是一家之言,也在多家软件企业做过实践与完善,套用软件领域比较流行的一个词,就是变得“开源共享”了,它不再属于任何人或机构,而是属于所有人,人人都可以完善和修改。
之所以叫川模型,其实主要是因为这个模型分为了三条执行流程,他们相互配合交互,正如中文的“川”字而得名。该模型的中心思想是我一直提倡的“以测试者引导开发,以文档化把控质量”的测试实施理念,希望借助这个模型与这个测试理念,为您的测试工作带来帮助,提高测试效率和软件质量。随着科技的不断进步,计算机应用已经完全深入到我们整个社会的体系中,人们现在已经无法适应没有软件的世界,您在读本书的时候,您的电脑正在工作、手机正在运行。甚至路上的汽车、信号灯都被软件全副武装。人们对软件的依赖越来越大,虽然质量可靠的软件给我们的工作和生活带来了前所未有的便利,但是质量不好的软件也让我们付出过惨痛的代价,这让我们充分认识到软件质量正在牵动着社会的命脉。
为了提高软件质量,软件开发人员进行过大量的研究和实践。从最初的技术革新,如编译、调试工具等地研究到各种计算机辅助软件环境,再到软件开发模型的研究。但是这种以技术和方法为重心的研究没有真正达到保证软件质量的目的(但是确实对软件质量的提高做出了贡献)。所以,人们开始认识到只有对软件开发过程的质量加以控制,才有可能大幅度的提高软件质量。因此,软件质量保证也从最初的以技术和方法为重心的模式,转移到以过程管理为重心的实践。
软件质量保证的本质是为了确保软件开发过程和结果符合预期要求而建立的一系列活动及其结果评价,其最终目的是缺陷预防,达到用户的实际需求,避免安全风险。软件测试活动是保证软件质量的有力武器,从最初的调试、验证,到现在形成的独立测试体系,无一不体现质量保证的重要性和测试工作的必要性。
目前主流的软件开发模型有:螺旋模型、增量模型、渐进模型、快速软件开发(RAD)以及Rational统一过程(RUP)等,这些模型对于软件开发过程具有很好的指导作用,但是这些模型并没有充分强调测试的价值,也没有给测试以足够的重视,利用这些模型不能更好地指导测试实践。因此,软件测试模型应运而生,它能够系统的有计划的指导测试与研发的一系列活动,对软件质量的提高有着重要的作用。目前常见的软件测试模型有V模型、W模型、H模型、X模型、前置测试模型等。
这些测试模型都在一定程度上完善和发展了软件的测试体系,但是它们仍然存在着或多或少的问题,还没有充分把测试对质量保证的能力发挥出来。下面分析一下几款主流测试模型的优劣情况。
V模型强调软件开发的协作和速度,反映测试活动和分析设计关系,将软件实现和验证有机结合起来;强调了在整个软件项目开发中需要经历的若干测试级别,并与开发级别对应。但是,没有体现“尽早地、不断地进行软件测试”的原则;把测试作为编码之后的最后一个活动,项目前期产生的错误直到后期才能测试发现;没有明确指出对需求、设计的测试。
W模型强调了测试计划等工作的先行和对系统需求和系统设计的测试;在整个软件开发周期中,测试与开发并行进行,有利于尽早发现问题;提出了测试的对象包括程序、需求、设计等内容;及时了解项目的测试风险,及早制定应对方案,加快项目进度。但是,它没有对测试规程进行说明,同时软件开发和测试保持着线性的前后关系,无法支持迭代、自发性以及需求变更调整等经常面临的问题。13
在H模型中,软件测试活动完全独立,贯穿于整个软件周期,与其他流程并发进行,某个测试点准备就绪时,就可以从测试准备阶段进行到测试执行阶段;提出了软件测试不仅仅指测试的执行,还包括很多其他的活动;测试是根据被测物的不同而分层次进行,不同层次的测试活动可以是按照某个次序先后进行的,但也可能是反复的。
下期预告
下期更新
书中1.1.4、1.15和1.2章节的内容
敬请期待!