网站大量收购闲置独家精品文档,联系QQ:2885784924

软件测试方法及其在嵌入式系统中的应用价值体.docVIP

软件测试方法及其在嵌入式系统中的应用价值体.doc

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件测试方法及其在嵌入式系统中的应用价值体.doc

软件测试方法及其在嵌入式系统中的应用价值体  软件在嵌入式系统中的作用越来越大。软件的质量不仅直接影响任务的成败,也关系着设备甚至人员的安全。随着用户对嵌入式系统软件质量要求的提升,软件测试已成为嵌入式系统交付前必不可少的环节。   经典的测试方法要求依据软件需求和设计文档,遵循既定的测试流程,严格按照预先设计的“脚本”开展。因此经典测试方法也称为脚本测试(Script Testing)。随着嵌入式软件迭代的加速,给软件测试留出时间逐渐减少。嵌入式系统软件测试呈现出一些新特点,包括软件需求变化快、软件文档缺乏、软件测试周期短、测试时间不足等。   探索性测试(Exploratory Testing)具有在时间短和文档不完善的情况下,充分发挥测试人员的经验和能力,快速、高质量完成软件测试等优点。已形成了一套管理方法和应用模型,并在微软等多个企业开展了成功的实践。探索性测试方法关注于实用,对它的研究也多数集中在实际应用方法而不是理论研究上。   探索性测试是解决嵌入式系统软件测试需求变化快、软件文档缺乏、测试周期短等现实问题的可行手段之一。为了恰当运用,需要总结探索性测试的一般性应用方法体系,并探讨其与嵌入式系统软件测试体系的联系和冲突。在此基础上提出适用于嵌入式系统软件测试的探索性测试应用模型。   1 探索性软件测试的基本原理   探索性测试的概念形成较早,经过随后的发展已形成了一定的应用体系。   1.1 探索性软件测试的概念   传统的软件测试分为测试需求分析、测试策划、测试用例设计、测试执行和测试总结等主要阶段,依次开展。传统软件测试流程依赖于完整、详实的软件需求和设计文档作为输入。而在现实的测试任务中,软件需求和设计文档往往有误或不完备,这导致脚本测试活动无法正常有效开展。   “探索性测试是同时进行学习、测试设计和测试执行的一种测试方法;也就是说,测试没有事先通过确定的测试计划定义,而是动态地被设计、执行和修改”。探索性测试(也称为探索式测试)最早于1983年提出,并在实践中发展 。与传统脚本测试相比,探索性测试具有以下技术特点:  (1) 测试活动的同时性。鼓励在测试执行的过程中,同时进行对被测软件的学习和测试设计。   (2) 关注测试任务。更关注于被测软件本身和需要测试的问题。   (3) 测试中的演绎推理。通过前一个测试活动的结果来指导后期测试的开展。   (4) 利用人的优势。关注于人本身的优势,如判断、分析、应变和协作的能力。   作为一种敏捷软件测试方法,探索性测试弱化了对测试的预先设计和测试流程的严格要求,而强调测试的同时性以及人的经验和创造性,关注于发现软件缺陷,持续优化测试工作。测试人员在测试?理解?再细化测试的迭代中,通过测试活动本身不断深入学习被测软件,从而能够缩减测试准备时间,发现更多缺陷,并使得软件测试可以在被测软件说明或文档不齐全的情况下开展。   1.2 探索性软件测试的主要方法   探索性测试的概念提出后,经过工业界和学术界人士的工作,已初步形成包含经验运用、执行策略、管理模型的体系。   1.2.1 探索方法   探索性测试强调对测试人员的知识和经验的运用。这些经验和知识可分为领域知识、系统知识和一般的软件工程知识。领域知识指领域规则、客户流程和操作场景等,包括用户使用和具体应用领域知识。系统知识是关于待测软件的特性和技术细节的具体知识,包括系统级的交互以及个体功能细节。一般的软件工程知识即不需要对被测软件系统和应用领域的具体知识。   丰富的知识和经验是对探索性测试人员的基本要求,以此为基础,探索性测试的发挥人的创造性,并由此增强了测试过程的适用性。从工程应用的实践中,已总结出了一些有用的启发式方法。运用这些策略和启发式方法,可以帮助软件测试人员在具备了基本的知识和经验的情况下,尽快熟悉被测系统,并在测试过程中充分运用经验和创造性。   在开展具体的测试活动时,测试人员则可以借助一些启发式方法在测试活动中“探索”被测软件。这些启发式的方法是测试中为了发现可能的缺陷,测试人员常用的一些技巧 。这其中典型的有Hendrickson的检查单以及Whittaker的漫游方法。这些方法的共同特性是提醒测试人员:   (1) 应关注软件最主要的功能,并在测试的过程中对软件的行为进行联想、质疑并发散,充分利用逆向输入、边界情况、近似值、错误输入和特殊值(如0),通过软件行为的原因、表现等举一反三;   (2) 应刻意构造一些特殊的行为,如尝试遍历所有输出、尝试最长操作路径、尝试关注关键数据的演化、打散或集中事物、长时间运行软件等;   (3) 应构造测试检查软件主要功能往往不关注的情景,例如启动和退出、全选、空值、资源过量和紧张、取消操作、

文档评论(0)

czy2014 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档