- 1、本文档共15页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第十章 软件测试技术前沿;本章重点:
了解软件测试的现状
掌握敏捷的测试方法
掌握测试驱动开发; 计算机科学发展至今,最根本的意义是解决人类手工劳动的复杂性,成为替代人类某些重复性行为模式的最佳工具。而在计算机软件工程领域软件测试的工作量很大,一般测试会占用到40%的开发时间;一些可靠性要求非常高的软件测试工作量巨大,测试时间甚至占到60%开发时间。而且测试中的许多操作是重复性的,非智力性的和非创造性的,并要求做准确细致的工作,计算机就最适合于代替人工去完成这样的任务。因而进行自动化测试能够提高软件测试工作效率,提高开发软件的质量,降低开发成本和缩短开发周期。从而有了敏捷测试方法和测试驱动开发方法。;一、软件测试的现状、原因及解决方法;2、现状的原因分析
在研究中我们发现,软件测试处于目前这种状态主要有以下几个因素:
(1)、国内软件产业本身不强大。
(2)、对软件测试的认识和重视程度不够。
(3)、软件管理者与用户的质量意识不够强。
(4)、软件行业质量监督体系不够好。
(5)、软件从业人员的素质不够高。
(6)、软件测试的经济效益短期内不够明显。;3、测试现状的解决方法
(1)、政府搭台,企业唱戏。
(2)、呼唤客户质量和过程控制意识。
(3)、加大软件测试人才培养和现有人员的技能培训。
(4)、软件测试从事后测试向质量控制上转移。
(5)、加大软件测试产业的开发力度。
(6)、多向国外学习,加大对软件测试理论、测试技术、测试管理的创新和测试工具的开发。;二、什么是敏捷测试; 敏捷方法中,需求变化比较快、产品开发周期很短,我们目前采用四周时间,也就是每个月发布一个新版本。开发周期短,功能不断累加,给软件测试带来很大的挑战,软件测试流程要做相应的调整。; 在敏捷测试流程中,如前所述,测试是一个持续的质量反馈过程,测试中发现的问题要及时反馈给产品经理和开发人员,而且某些关键方面也要得到我们足够的关注,主要有:
1、测试人员不仅要全程参与需求、产品功能设计等讨论,而且要面对面地、充分地讨论(包括带语言、视频的即时通讯),仅仅通过邮件是不够的;
2、参与代码复审(Code Review),并适当辅助开发人员进行单元测试;
3、在流程中增加一个环节“产品走查(Product Walk-through)”——测试人员和产品经理、开发人员等在一起,从头到尾将新功能看一遍,可直观、快速地发现问题;
;敏捷开发中的测试分为7种类型:
1、自动化回归测试(Automated regression test)
运行自动化测试代码来验证当前的修改没有破坏已有的功能。
2、单元测试(Unit test)
验证单元级别的代码工作是否正常。
3、公共API测试(Public API test)
验证被第三方开发人员调用的API可正常工作,并且得以文档化。
4、私有API测试(Private API test)
验证内部使用的API工作是否正常。
5、命令行测试(Command-line test)
验证在命令行输入的命令工作正常。
6、用户界面测试(User interface test)
验证界面层的功能是否正常。
7、“狗粮”测试(Dog-food test)
这里用了一个有趣的名字“Dog-food test”,自己的“狗粮”自己先尝尝!在企业内部使用自己开发的产品,通过这种实际地使用来确保功能正确,满足使用要求。;敏捷测试与一般测试的区别:
1、项目相当于开发与测试并行,项目整体时间较快。
2、模块提交较快,测试时较有压迫感。
3、工作任务划分清晰,工作效率较高。
4、项目规划要合理,不然测试时会出现复测的现象,加大工作量。
5、发现问题需跟紧,项目中人员都比较忙,问题很容易被遗忘。
6、耗时、或较难解决对项目影响不大的问题一般会遗留到下个阶段解决。
7、发现BUG能够很快的解决,对相关的模块的测试影响比较小。
8、版本更换比较勤,影响到测试的速度。
9、要多与开发沟通。
10、要注意版本的更新情况。
11、测试人员几乎要参加整个项目组的所有会议。;三、什么是测试驱动开发;2、驱动开发基本原理
测试驱动开发的基本思想就是在开发功能代码之前,先编写测试代码,然后只编写使测试通过的功能代码,从而以测试来驱动整个开发过程的进行。这有助于编写简洁可用和高质量的代码,有很高的灵活性和健壮性,能快速响应变化,并加速开发过程。
测试驱动开发的基本过程如下:
(1)快速新增一个测试;
(2)运行所有的测试(有时候只需要运行一个或一部分),发现新增的测试不能通过;
(3)做一些小小的改动,尽快地让测试程序可运行,为此可以在程序中使用一些不合情理的方法;
(4)运行所有的测试,并且全部通
文档评论(0)