- 1、本文档共36页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
12确认测试白盒测试解读
本堂课讲授重点 确认测试 白盒测试技术 确认测试 确认测试的概念 确认测试的范围 软件配置复查 Alpha和Beta测试 确认测试的概念 确认测试的目标是验证软件的有效性 验证:“保证软件正确地实现了某个特定要求的一系列活动” 确认:“为了保证软件确实满足了用户需求 而进行的一系列活动” 软件的有效性:如果软件的功能和性能如同用户所合理期待的那样,软件就是有效的 需求分析阶段产生的软件需求规格说明书是进行确认测试的基础 确认测试的范围 必须有用户积极参与,以用户为主进行。用户应该参与设计测试方案,使用用户界面输入测试数据并且分析评价测试的输出结果 通常使用黑盒测试法 保证软件: 能满足所有功能要求 能达到每个性能要求 文档资料准确完整 能满足其他预定的要求(如安全性、可移植性、兼容性、可维护性等) 软件配置复查 保证软件配置所有成分齐全,包括: 可行性研究报告 需求分析规格说明书 总体设计说明书 详细设计说明书 源代码清单 测试计划、测试方案、测试结果 同时,质量符合要求,文档与程序完全一致,具有完成软件维护所必须的细节,已经编好目录。还有用户手册的完整性合正确性。 Alpha和Beta测试 大型通用软件,在正式发布前,通常需要执行Alpha和Beta测试, Alpha测试是内测, Beta测试是公测。 Alpha测试Alpha测试是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的受控测试,Alpha测试不能由程序员或测试员完成。Alpha测试发现的错误,可以在测试现场立刻反馈给开发人员,由开发人员及时分析和处理。目的是评价软件产品的功能、可使用性、可靠性、性能和支持。尤其注重产品的界面和特色。 Beta测试由软件的最终用户在一个或多个客户场所进行,开发者通常不在Beta测试现场。 Beta测试是软件在开发者不能控制的环境中的“真实”应用,用户记录在Beta测试过程中遇到错误,并且定期把这些问题报告给开发者。开发者对软件产品进行必要的修改和升级,最后将软件产品交付给全体用户使用。Beta测试着重于产品的支持性,包括文档、客户培训和支持产品的生产能力。只有当Alpha测试达到一定的可靠程度后,才能开始Beta测试。 Alpha测试举例 2004年3月,微软Bill Gates证实,微软年内将拿出官方Alpha测试版的Longhorn操作系统,微软Bill Gates也同时证实,Longhorn要到2006年才能正式上市销售。微软这款下一代桌面操作系统将内建DirectX 10,并且采用3D操作界面,采用WinFS文件系统,采用新一代安全机制。 白盒测试技术 问题提出 概念 白盒测试技术主要包括: 逻辑覆盖 控制结构测试 白盒测试概念 白盒测试也称结构测试或逻辑驱动测试,它是知道产品内部工作过程,可通过测试来检测产品内部动作是否按照规格说明书的规定正常进行,按照程序内部的结构测试程序,检验程序中的每条通路(虽然这是不可能的)是否都有能按预定要求正确工作,而不顾它的功能。 测试方案:--包括具体的测试目的,应该输入的测试数据和预期的结果 测试用例:--测试数据和预期的输出结果 测试数据 不同的测试数据发现程序错误的能力差别很大 不可能进行穷尽的测试 应该选用高效的测试数据,提高测试效率降低测试成本。设计测试数据的技术包含白盒测试时设计测试数据的技术和黑盒测试时设计测试数据的技术。 问题提出 “我们应该更注重于保证程序需求的实现,为什么要花费时间和精力来担心(和测试)逻辑细节?” 逻辑错误和不正确假设与一条程序路径被运行的可能性成反比。当我们设计和实现主流之外的功能、条件或控制时,错误往往开始出现在我们的工作中。日常处理往往被很好地了解(和很好地细查),而“特殊情况”的处理则难于发现。 我们经常相信某逻辑路径不可能被执行,而事实上,它可能在正常的基础上被执行。程序的逻辑流有时是违反直觉的,这意味着我们关于控制流和数据流的一些无意识的假设可能导致设计错误,只有路径测试才能发现这些错误。 例如,考虑 100行C语言程序,在一些基本的数据声明之后,程序包含两个嵌套循环,根据输入的条件分别执行1到20次,在内部循环中,需要四个if-then-else结构,该程序中大约有1014条可能路径! 为了正确表达这个数值,我们假设开发了一个有魔力的测试处理器(“有魔力”是因为不存在这样的处理器)进行穷举测试。该处理器能在一毫秒内开发一个测试用例、进行运行并评估结果,如果每天运行24小时,每年运行365天,则需要3170年的时间来测试这个程序。不可否认,这将导致大多数开发进度表的混乱,对大型软件系统不可能进行穷举测试。 然而,白盒测试不应该被抛弃,可选择有限数量的重要逻辑路径进行测试,检测重要
文档评论(0)