談談灰盒測試

  轉載自:http://se.csai.cn/testtech/200812230934371405.htm

 

 

        在测试领域众所周知存在黑盒测试和白盒测试,黑盒测试更多是在集成测试阶段进行只关注应用是否符合需求,而不关心代码设计的结构,方式,方法。而白盒测试是针对黑盒测试提出的,前提是知道软件产品内部工作过程。通过测试来检测软件产品内部动作是否按照规格说明书的规定正常进行,通常是在单元测试阶段进行。那么做了这两种测试是否覆盖了软件测试的全部内容,即是否就能保证产品的质量呢。其实是不一定的,或者说如果靠这两种方法来覆盖,投入的代价是比较大的。譬如目前很火的OPEN API的测试,譬如对具备软件平台性质产品的测试。因为通过黑盒手工测试是很难完成的,而白盒测试是在单元测试进行的,显然对产品的测试带来很大的局限性,它也无法测试到产品在集成过程中带来的问题。那么灰盒测试就有它出现的必然性,这就是所谓存在就是合理的。

 

  灰盒测试的特性:

  1. 灰盒测试通常是在集成测试前期进行的。灰盒测试通常在程序员做完白盒测试之后(有些书上认为白盒测试是由测试人员进行的,我觉得纯属理想主义),在功能测试人员进行大规模集成测试之前进行的。

  2. 灰盒测试是需要了解代码工程的实现的

  3. 灰盒测试是通过类似白盒测试的方法进行的,也就是说和白盒测试的方法是相同的,是通过编写代码,调用函数或者封装好的接口进行的。

  4. 灰盒测试是由测试人员进行测试的。

  灰盒测试和白盒测试的区别

  1. 测试的时段不同,白盒测试在单元测试阶段进行,灰盒测试在集成测试前期进行

  2. 测试的关注对象不同,白盒测试更关注内部实现是否按照规格说明书进行,灰盒测试除了需要关注白盒测试关注的内容还更多从业务层面去考虑问题,考虑更多的组合测试业务场景。

  3. 范围不同,白盒测试更关注单个代码段,函数的正确性,灰盒测试的对象已经基本能完成一个完整的业务功能。

  4. 灰盒测试的代码比较独立,不像白盒测试基本上和程序代码需要做到一一对应。

 

  灰盒测试和白盒测试的相同点

  1. 目的相同

  2. 方法相同,都是需要通过代码来实现

  3. 对测试人员素质要求相同

  灰盒测试和黑盒测试的不同点

  1. 测试的方法不同。

  2. 对测试人员要求不同。灰盒测试要求比较强的编程能力。

  3. 测试范围不同,关注的对象不同,黑盒测试是覆盖产品范围最广的测试,是灰盒测试无法取代的。但是灰盒测试是可以被黑盒替代的,只是代价比较大,需要很多的测试用例。

 

  灰盒测试和黑盒测试的相同点

  1. 目的相同

  2. 测试所处的时间段相近。

黑盒测试和白盒测试是软件测试中常用的两种测试方法,它们的主要区别在于测试人员是否了解被测试软件的内部实现细节。 黑盒测试是指在不了解被测试软件的内部实现细节的情况下进行测试,测试人员只关注软件的输入和输出,通过输入不同的数据,观察软件的反应和输出是否符合预期,以此来评估软件的质量。黑盒测试通常用于测试软件的功能是否符合需求、是否易用、是否稳定等方面,是一种功能测试方法。黑盒测试的优点是可以模拟真实用户的使用场景,缺点是测试人员无法深入了解软件内部实现,可能会遗漏一些细节。 白盒测试是指测试人员了解被测试软件的内部实现细节,通过检查代码、逻辑和数据结构等,设计测试用例并进行测试。白盒测试通常用于测试软件的代码质量、性能、安全等方面,是一种结构测试方法。白盒测试的优点是可以发现更多的缺陷和错误,缺点是需要测试人员具备一定的技术能力,测试成本较高。 黑盒测试和白盒测试在应用范围上有所不同,黑盒测试通常用于功能测试、系统测试、验收测试等方面,适用于各种类型的软件,如网站、移动应用、桌面应用等。而白盒测试通常用于单元测试、集成测试、性能测试等方面,适用于需要进行代码审查和优化的软件,如操作系统、数据库等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值