- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件测试技术及测试实训教程讲座( ) 第章.docx
软件测试技术与测试实训教程
黎连业王华李龙黎照
北京:机械工业出版社
2012.05
第11讲:第11章功能测试和功能测试实训
功能测试指测试软件各个功能模块是否正确。这种测试的目标是检查数据的接受、处理和检索是否正确,以及业务规则的实施是否恰当。此类测试基于黑盒技术,是单元测试的补充,该技术通过图形用户界面与应用程序进行交互,并对交互的结果进行分析,以此来核实应用程序及其内部进程。它虽是单元测试的补充,但又有不同之处,主要表现为:单元测试说明了代码执行是否正确;功能测试说明了完成的功能是否做正确的事情;单元测试往往是从代码开发人员的角度来看,而功能测试是从最终用户和业务过程角度来看。
本章重点讨论以下内容:
★功能测试的概述;
★功能测试的重点;
★常见功能测试的方法;
★功能测试的常见流程;
★功能测试的人工测试实训和操作方法;
★功能测试的自动化测试实训操作方法。
11.1功能测试的概述
11.1.1功能测试的基本概念
功能测试就是对产品的各功能进行验证,根据功能测试用例,逐项测试,检查产品是否达到用户要求的功能。
功能测试一般须在完成单元测试后集成测试前进行,而且是针对应用系统进行各功能测试。一般应用系统有多个功能(子系统),功能测试是基于产品功能说明书,是在已知产品所应具有的功能,从用户角度来进行功能验证,以确认每个功能是否都能正常使用、是否实现了产品规格说明书的要求、是否能适当地接收输入数锯而产生正确的输出结果等。功能测试,包括用户界面测试、各种操作的测试、不同的数据输入、逻辑思路、数据输出和存储等的测试。对于功能测试,针对不同的应用系统,其测试内容的差异很大,但一般都可归为界面、数据、操作、逻辑、接口等几个方面如:
★程序安装、启动正常,有相应的提示框、适当的错误提示等;
★每项功能符合实际要求;
★子系统的界面清晰、美观;菜单、按钮操作正常、灵活,能处理一些异常操作;
★能接受正确的数据输入,对异常数据的输入可以进行提示、容错处理等;
★数据的输出结果准确,格式清晰,可以保存和读取;
★功能逻辑清楚,符合使用者习惯;
★子系统的各种状态按照业务流程而变化,并保持稳定;
★支持各种应用的环境,能配合多种硬件周边设备,与外部应用系统的接口有效。
11.1.2功能自动化测试的基本要求
功能测试是基于产品功能说明书并根据产品特征、操作描述和用户方案,来测试产品的每个功能是否都能正常使用、是否达到了产品规格说明书的要求。功能测试只需要考虑它的功能点不需要考虑软件的内部结构及代码等。功能测试包括用户界面测试、各种操作的测试、不同的数据输入、逻辑思路、数据输出和存储等的测试。
1.功能测试在以下几种情况下引入自动化测试
★测试时间相对长,且存在大量重复性、机械性人工测试的项目;
★产品型软件,每发布一个新的版本或打补丁都需要对其他模块执行相同的测试;
★项目型软件,需求变更频繁,每变更一次,需要对原有的无争议的功能做测试;
★经常需要更换应用程序部署站点的软件,每更换一次需要对所有功能做验证测试;
★测试时间相对长,且存在大量需要执行回归测试的软件项目;
★系统界面稳定,需要对业务流程进行验证测试的软件;
★采用增量开发持续集成的项目,需要对频繁更新的程序执行验证测试;
★软件项目采用主流开发平台技术,且不存在物理交互的测试,如刷卡测试;
★项目工期紧、测试周期短的项目不应采取自动化测试;
★界面的美观、声音的体验和易用性的测试不应采取自动化测试。
一般来说,把自动化测试的工作集中在关键的业务过程,复杂应用,以及由这些组成的用例方面(相对于低级别任务,例如系统级的验证)是很有意义的。
人工测试在功能测试中的优势还是比较大的,工具本身并没有想象力和灵活性,而人对界面美观性、逻辑合理性,容易作出判断。
2.功能自动化测试需要解决的问题
(1)开始之前
在功能自动化测试项目开始之前,应该全面地调查和了解:
1)测试过程自动化的成本是多少?
2)其投资回报率是什么?
3)哪些应用/过程适合做自动化测试,哪些不合适?
4)是否需要新的培训,这将对当前的开发计划安排产生怎样的影响?
5)自动化测试得正确地方法论是什么?
6)自动化测试时涉及到哪些情况?
7)当比较自动化测试产品时,哪些功能最重要?
(2)开始功能自动化测试需要解决的问题
1)准备数据
如系统的基础数据、用户、权限等,没有这些就无法登录和执行其他操作。
2)复杂操作
比如提交一张表单,然后到了list页面想要删除这条记录,可是id是自动生成的,不知道该删哪个?
3)测试太脆弱
不像单元测试,重构的时候可以一并改了,功能测试针对界面,所以需要手工维护,否则很容易失败。
4)测试比较麻烦。
5)执行速度比较慢。
6)带验证码的页面没法测。
11.1.3功能测试需要的参考文档
文档评论(0)