软件测试方法分类-按是否查看代码划分

本文介绍了软件测试中的黑盒、白盒和灰盒测试。黑盒测试关注输入和输出,不涉及代码;白盒测试则基于代码进行;灰盒测试结合了两者,既关注功能也考虑内部结构。性能测试从用户体验角度是黑盒测试,从代码层面则是白盒测试。在实际应用中,白盒测试常见于单元测试和对关键业务的测试。

接上一篇,下来我们再细讲,第三个维度的分类,

1,黑盒测试(Black-Box Testing)

黑盒测试也是功能测试,测试中把被测的软件当成一个黑盒子,

不关心盒子的内部结构是什么,只关心软件的输入数据和输出数据。

我们来仔细剖析下这个概念的本质,这里有个误区,很多人总会觉得只要是不涉及到代码的就是黑盒测试,其实是不对的。

黑盒测试,主要是指我们看不到这个被测软件的代码的测试才叫黑盒测试

怎么理解这句话?

举个例子,有个软件叫星球,我们针对星球的测试只要是看不到开发星球的代码。

这个时候只要不涉及到开发星球的代码测试都是黑盒测试,哪怕是你做的自动化写的代码,也是主要停留在功能层面,都是黑盒测试。

这里面额外提到一个特殊的存在就是性能测试

如果从用户体验上去观察性能就属于黑盒测试,如果从代码层面去测试函数的资源占用和相应时间就属于白盒测试。

所以,你品,你细品!

2,白盒测试(White-Box Testing)

白盒测试又称结构测试、透明盒测试、逻辑驱动测试或基于代码的测

试。白盒测试是指打开盒子,去研究里面的源代码和程序结果。

在很多公司,都其实不做白盒测试,哪怕是我在的很多一线的互联网大厂。除非在代码要求很高的时候,并且很多业务都很关键,比如涉及到金额等方面,会有部分公司要求白盒测试。比如测试JAVA的时候,会基于cucumber去写对应的fixture来进行单元测试。

还有一类就是做嵌入式,对一些C语言,涉及到内存泄漏,空指针等等,我们是要进行单元测试的。

3,灰盒测试(Gray-Box Testing)

灰盒测试是介于白盒测试和黑盒测试之间的一种,灰盒测试多用于集

成测试阶段,不仅关注输入、输出的正确性,同时也关注程序内部的

情况。

灰盒测试在业界是一个提及频率极低的存在,毕竟黑盒和白盒测试都是界限很分明,就是看是否涉及到源代码。

但是提到灰盒的时候,由于概念的模糊,很多人都是朦朦胧胧的,网上的资料(这里指的是可落地的方

案)是极少的。

这里通过涉及到一个灰盒的例子,目前是我找到最容易理解的,分享给大家:

#1) 如果测试人员在测试网站时单击链接并遇到错误,灰盒测试人员可以更改 HTML 代码以验证问题。

在这种情况下,白盒测试是通过修改代码来进行的,而黑盒测试是在测试人员测试前端的变化时同时进行的。灰盒测试是通过将白盒与黑盒相结合而产生的。

#2) 了解并访问错误代码数据库(包括每个错误代码的原因)的灰盒测试人员可以分析错误代码并更深入地探索原因。假设网页收到错误代码“内部服务器错误 500”,并且此问题的原因在表中列为服务器错误。

使用此信息,测试人员可以进一步调查问题并向开发人员提供详细信息,而不是简单地向他们报告。

#3) 灰盒测试人员可以检查日志文件以确定问题的根本原因。灰盒测试器可以简单地检查低性能、程序崩溃和其他问题。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

软件测试老痞

你的支持,是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值