浅谈灰盒测试自动化工具AppSightV2.docVIP

  1. 1、本文档共4页,可阅读全部内容。
  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文档。上传文档
查看更多
浅谈灰盒测试自动化工具AppSightV2

浅谈灰盒测试自动化工具AppSight V2 黑白双煞的困惑 大家都知道,在软件开发生命周期过程中测试的地位举足轻重,它要占据这个软件开发生命周期中相当多的时间。典型的测试方法即黑盒测试和白盒测试。 前者也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测试来检测每个功能是否都能正常使用。在测试时,把程序看作一个不能打开的黑盆子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数锯而产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性。 后者则是也称结构测试或逻辑驱动测试,它是知道产品内部工作过程,可通过测试来检测产品内部动作是否按照规格说明书的规定正常进行。按照程序内部的结构测试程序,检验程序中的每条通路是否都有能按预定要求正确工作,而不顾它的功能。 是否有了黑白双煞两种手段后就可以保证测试工作高效进行、应用软件又是否能够如期交付呢?我们先来看一组统计数据,如图1所示。 图1 测试发现问题后解决问题占用了更多的时间 事实上,软件测试的根本目的是要提高应用软件的质量,保证其未来能够可靠稳定运行。图1的数据也充分说明了,随着测试的深入,测试发现问题后的解决问题占用了更多的时间。此时黑盒白盒都显然有些力不从心了。白盒测试的代码扫描和应用功能挂不上钩,而黑盒测试的结果就是测试人员把自动化功能测试发现的问题通过缺陷跟踪系统提交给开发人员处理。尽管好一点的测试人员会提供详细的测试用例文档和错误截图,但是开发人员仍不得不面临重现问题并不断的采用Trial Error的手段来分析并解决问题。 很显然这种问题处理方式是手工方式且非常没有效率,会延缓问题的处理时间。因此,我们需要另辟新径。 灰盒俱备,只欠工具 所谓灰盒测试,是介于黑盒和白盒之间的,既关注输出对于输入的正确性,同时也关注内部表现的测试方法。这种关注不像白盒那样详细、完整,只是通过一些表征性的现象、事件、标志来判断内部的运行状态。它达到了某种目的,也就是一旦发现问题,可以迅速定位到黑盒中的某个分支,甚至代码级别。灰盒测试在系统组件的协同性环境中评价应用软件的设计,从而增强了测试效率、错误发现和错误分析的效率,可以使得测试达到一个新的境界。 但是,灰盒测试对测试人员的要求也比较高,比如灰盒测试要求测试人员具有丰富的开发知识;需要测试人员更多地从业务层面去考虑问题,考虑更多的组合测试业务场景的能力;另外,很多时候问题的解决还需要很多外围知识,包括数据库层面上的分析能力、J2EE服务器内部的调用链分析等。 所以简单来看,灰盒测试是一个非常好的测试理念,但要真正发挥其作用,显然还需要相应的自动化工具这个东风来吹一下。AppSight就是其中一种自动化工具。 AppSight概述 AppSight由来已久,原来是有Identify开发的,之后被BMC公司收购但是独立运营。 灰盒测试方法 灰盒测试中的精华就是通过灰盒测试能大大缩短解决测试中发现的问题的时间。问题解决流程实际上包括了主要两个过程:“根源问题分析”和“问题解决”。而以经验来看,以前我们的时间主要是耗费在“根源问题分析”上的,一旦问题被定位,解决问题相对是非常容易的。 为了进行根源问题分析,通常需要3个典型步骤来进行分析:信息收集、问题重现和问题分析 可惜的是,目前来看,大多数开发人员都是手工来完成这些步骤的,即这个流程是非高效的手工方式,而且易于出错。 而AppSight这个工具的背后实际上是提供了一种问题解决思路的转变,也就是说需要把重现问题这个环节最大程度地消除,同时在发现问题的时候就尽可能的去收集问题信息和相关环境信息,并协助定位问题。这于灰盒测试的方法实际上是不谋而合的,如图2所示。 图2 AppSight提供了一种问题解决思路的转变 工作原理 BMC AppSight应用解决方案事实上是通过采用类似于飞机上的“黑盒子”专利技术来使得测试后问题解决流程变得更加自动化。这又完全不同于黑盒测试,原因在于飞机的黑盒子最终是可以被解剖的,而黑盒测试永远是面对一个黑盒子。具体而言,AppSight系统会将问题发生的相关信息完整录制下来,包括问题发生的现场场景、信息及分析等,从而快速切入到问题根源。如图3所示。 图3 AppSight系统会将问题发生的相关信息完整录制下来 下面是运用AppSight工具的典型测试工作流程。 1. 测试人员通过AppSight提供的录制器进行测试录制,由于灰盒测试不同于黑盒测试中主要强调回归测试的概念,因此录制不需要添加校验点和进行参数化,整个过程相当简单易用。 2. 录制过程中,录制器会将所有过程

文档评论(0)

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

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

1亿VIP精品文档

相关文档