高考考试网
当前位置: 首页 高考资讯

软件白盒测试和黑盒测试的区别(软件测试干货重温黑盒)

时间:2023-08-21 作者: 小编 阅读量: 4 栏目名: 高考资讯

但说实话,日常工作中我使用灰盒测试方法的场景相对较多,总结来说,就这么一个流程:发现问题-->我大概知道你是怎么玩的-->初步定位问题原因-->同开发确定问题-->接下来呢?恰好,我最近遇到一个问题,并且刚好使用到灰盒测试方法,分享给大家窥其一二。这算是一次我所理解的完整的灰盒测试,也是我一直推荐给组内人员的高效率的一种工作方式:我大概知道你是怎么实现业务的,实践定位问题,达到快速解决问题的目的。

对于黑盒、白盒与灰盒测试方法的理解,几年前我在某乎做过一个概念性的回答,当时提问者询问:如何跟非技术人员解释黑盒、白盒、灰盒测试的区别?

我的回答原文如下:


既然是对非技术人员解释,就不能用专业术语。

这样说吧,有个打孔机,类似这样。

纸条从盒子左方插入,从右方出来时,分别打出圆形、正方形、三角形三个样式的孔。

某天,打出来的纸条,只有一种图形。

黑盒测试员只能说:“这个打孔机坏了!”

灰盒测试员把打孔机的盖子掀开,发现打孔机的造型原来是这样的。

于是他说:“机器仍能打孔,说明主机没坏;三个桩子也都是好的;但只打印出了圆形,可能因为连接正方形和三角形桩子的地方有问题。”

白盒测试员把机器拆开,查看内部的电线、电路、控制器等等,发现连接正方形和三角形的电线烧坏了,于是说:“原因找到了,换根电线吧。”


彼时,我还是一位测试小鸟,在研习了不少理论知识后,回答了这个问题。现在,我算不上测试老鸟,但能算个测试大鸟,在工作中,越发频繁地接触这三种测试方法。

如果你要问我哪种测试方法更好,我不置评价,每个人的口味不一样,别人适合的不一定自己适合。

对于黑盒测试方法来说,是每一位测试的必备技术,没有谁不会:发现问题,抛出问题。简单、轻松、快速,是黑盒测试的优点,特别是在项目特别赶,测试时间无限被压缩的时候——只需要抛给开发问题,剩下的让开发自个儿玩去吧。

但黑盒测试人员常常被人诟病只知道点点点,抛开此类“鄙视”不谈,接着上面继续,我们是不是忽略了一个事实:项目既然赶,那开发的时间亦不充足,如果恰好遇上稍稍复杂的bug,并搭配不靠谱的开发,一个bug的生命周期可能会拉得极长,效率特别低下。

这么说,那用白盒测试方法呗,看代码,查原因,丢给开发后,留下一个高大帅气的背影,让开发心里默念——这个测试不简单。

白盒测试可以,但使用它时,你需要盘算盘算:

是否有充足的时间研究代码以及和代码相关的环境部署、配置设置等?

付出和产出是否成正比,如同自动化测试,能达到高性价比吗?

白盒是一种选择,但同样是一个难题。更别说白盒对于测试技术的高要求。

废话了这么多,你一定会说:风风,你不就是拐弯抹角地推荐灰盒测试嘛。

我不知道该怎么回答你,就像刚开始说的,每个人的口味不一样,适合自己的测试方法,最醇最香。

但说实话,日常工作中我使用灰盒测试方法的场景相对较多,总结来说,就这么一个流程:

发现问题-->我大概知道你是怎么玩的-->初步定位问题原因-->同开发确定问题-->接下来呢?

会分成两类:

1、我定位的原因并不是真正的原因。但我能通过这个过程学习到新知识、新业务,积攒个人经验(很多人往往弃步于此)

2、我定位的问题是真正的原因。就此打住吗?并不是。你能提出问题的解决建议吗?你的建议是否比开发的修改 or 产品给的方案更好,更具有可实施性?

合理地提出解决问题的建议,这才是你关注的重点,而不是因为找到问题原因而沾沾自喜,迷失于他人的赞许中。

实践是检验真理的唯一标准。恰好,我最近遇到一个问题,并且刚好使用到灰盒测试方法,分享给大家窥其一二。

先描述下业务:

我测试的X系统会从配置系统拉取几条数据,并保存在数据库A(读写库)中,数据库A又会将新数据实时同步到数据库B(读写库)中。业务上:a类用户从数据库A中读数据,b类用户从数据库B中读数据。

再说下bug:

我在配置系统删除了一条数据,结果a类用户没有读到该条数据(预期结果),b类用户却读到了该条数据(非预期结果)。去数据库查看,A库没有被删除的数据,B库仍然存在被删除的数据。

按理说,走到这一步,便可以到bug系统提交一条bug指给开发解决。不过我想到开发最近天天晚上加班,并且我之前提的几个bug反复修改,开发效率很低,加之临近上线,时间被压缩,于是乎,我额外抽出一点时间,简单定位下问题。

这个问题看起来简单,无非是同步导致两个库的数据不一致,可以得出两个猜测:

一 同步没有触发。

二 同步触发了,但数据没有在B库落库。

接着,我做了一个实验:在配置系统修改了一条数据,结果A库和B库的数据保持一致。据此,猜测一不成立。

紧接着,我又做了一个实验:进入A库,在数据库内删除一条数据,奇怪的是,B库的数据被删除了,猜测二也不成立。

两种猜测同时被证明无效,那问题究竟出在哪里呢?

于是,我上到服务器,重新在配置系统删掉一条数据,并触发了一次同步操作,我在日志上找到了两条sql:

truncate table xxtable;

insert into xxtable……;

到此,我恍然大悟。

原来因为这个业务的数据不多,开发可能是这样处理的:从配置系统拉取数据时,先清空A库的xxtable,再向A库的xxtable插入数据,以此简化数据增删改的逻辑。但我司DBA做过处理,不允许数据库级别之间进行truncate table的同步。

最后找开发讨论,果真是这个问题。

怎么解决呢,将truncate table xxtable换成delete from xxtable即可。

这算是一次我所理解的完整的灰盒测试,也是我一直推荐给组内人员的高效率的一种工作方式:我大概知道你是怎么实现业务的,实践定位问题,达到快速解决问题的目的。

最后,一如既往地做个总结吧:

  • 测试时,特别简单的bug建议直接抛出,让开发去玩,没必要浪费精力定位问题
  • 复杂问题多总结,定位问题时头脑要清晰且灵活,证实或否定每一个猜测
  • 和开发打好关系(或强制要求),让他们在解决bug的时候注明bug产生的原因
  • 多花时间在业务上,绝对物超所值
    推荐阅读
  • 皇家橡树爱彼30万左右(爱彼推出全新皇家橡树计时码表黑色陶瓷50周年纪念版)

    [腕表之家品牌新闻]自1997-1998年发布以来,爱彼皇家橡树计时码表历经演变,2016年直径从39毫米提升至41毫米。数个月前,为庆祝皇家橡树问世50周年,品牌推出了一系列纪念时计。如今,爱彼为皇家橡树计时码表系列增添一款全新型号。新款腕表以黑色陶瓷打造,直径41毫米,厚度12.4毫米。玫瑰金指针、时标和品牌标识与黑色陶瓷表壳及表链形成鲜明对比,赋予皇家橡树计时码表新的诠释。此外,4时30分位置还设有日期视窗。

  • 临沂最火的美食(数一数山东临沂的美食)

    数一数山东临沂的美食当里个当,当里当,说山东到山东,山东的美食数不清今天咱们就说说山东临沂的美食,山东临沂的美食丰富多样,老霸道了!临沂是个人口大市,人口1100万以上,境内多山,特产丰富,临沂人勤劳能吃苦爱钻研,加上临。

  • 早晨的祝福语(可以做早晨祝福语的句子)

    低头是一种能力,它不是自卑,也不是怯弱,它是清醒中的嬗变。睁开睡眼,整理衣衫,精神抖擞,大步向前。晨光耀眼,阳光青年,为了理想,心向蓝天。绿草清香,宜人芬芳,展现微笑,新的一天!我叫阳每天把的阳光洒在你身上,我叫月亮每天给你一个甜美的梦境,祝愿你事事如意!温暖的味道在清晨的怀抱中香甜有营养,浪漫的味道在天亮的祝福中香甜好滋养,幸福的味道在最早的祝福中快乐升级,亲爱的,早上好。

  • 龙棕是裸子植物还是被子植物(龙棕介绍)

    龙棕是裸子植物还是被子植物龙棕是被子植物。龙棕呈灌木状,体高0.5-0.8米;无地上茎,地下茎节密集,多须根,向上弯曲,犹如龙状,故名龙棕。叶簇生于地面,形状如棕榈叶,但较小和更深裂,裂片为线状披针形,长25-55厘米,宽1.5-2.5厘米,先端浅2裂,上面绿色,背面苍白色;叶柄长25-35厘米,两侧有或无密齿。果实肾形,蓝黑色,宽10-12毫米,高6-8毫米。种子形状如果实,胚乳均匀,胚侧生,偏向种脐。花期4月,果期10月。

  • 开头nai字的成语有哪些(开头nai字的成语举例)

    是我使你受害乃:助词既有武功,又有文德,我来为大家科普一下关于开头nai字的成语有哪些?下面希望有你要的答案,我们一起来看看吧!既有文德,又有武功。本意是忠于朝廷。语言像金玉一样。你的祖父,你的父亲。意味深长,值得人仔细体会琢磨。禁受住严霜酷寒。比喻能经受住严酷的考验。指畏首畏尾的很为难的样子。

  • 新手上路练车该怎么练(新手上路应该怎么练车)

    同时检查车门有无关好,后视镜是否调整得当。紧急制动就是为了处理突发情况。同时,学会紧急制动,特别要熟悉车辆的ABS装置,熟悉踩出ABS后,车辆的正常反应是什么?不至于出现踩出ABS了,不敢踩了的情况。经常性的急刹车行为,对自己爱车的发动机、轮胎等损伤也是非常巨大的。积累潜在危险点,培养正确驾驶的好习惯。且压线行驶,万一出现事故,是要负全责的,而且万一发生于对向车辆剐蹭,非常危险。

  • 降血糖降血脂护肝养生茶(春季用它泡水喝)

    柠檬泡水1、预防高血压常饮柠檬水可预防和辅助治疗高血压和心肌梗死。每天喝三到四杯的菊花茶,对恢复视力也有帮助。经常对着电脑的上班族,应多喝菊花茶,能够帮助抵抗电脑的辐射。高血脂的人,可以适当泡山楂水喝,会有很大帮助。

  • 邓丽君经典老歌超长12小时(1980年名曲音乐-邓丽君名曲欣赏)

    点击播放↘↘↘唱片封面《名曲音乐-邓丽君名曲欣赏》是一张LP黑胶转制的老唱片,收录了12首邓丽君经典歌曲音乐。风录可朗(私人)有限公司新加坡/马来西亚唱片公司出品;香港宝丽多(私人)有限公司1980年发行,请欣赏!唱片图片唱片曲目:01.路边的野花不要采02.千言万语03.海韵04.想你想断肠05.四个愿望06.情人的关怀07.向日葵08.我怎能离开你09.水涟漪10.再见,我的爱人11.丝丝小雨12.香港之夜谢谢欣赏

  • 炒饭的100种做法大全(蛋炒饭的做法)

    最常见的,是加入胡萝卜丁、豌豆、香肠等等。BySweet悠悠雨心用料鸡蛋1个米饭一碗午餐肉50g胡萝卜适量青椒适量西兰花适量玉米适量盐2g花生油适量做法步骤1、蛋炒饭。鸡蛋打散加入盐,加入米饭拌均。

  • 搭配阔腿裤的小白鞋推荐夏款(今春流行阔腿裤)

    比如下面的深色卫衣+浅色阔腿裤,深浅结合自带时尚感,搭配白色的运动鞋也能体现出休闲的风格。