在软件测试工作中,为充分利用现有的时间和资源条件,提高测试效率和测试充分性,当前有多种方法辅助测试人员完成测试工作,推进项目进度,其中最普遍的莫过于白盒测试和黑盒测试,白盒测试和黑盒测试的概念和常用方法在已有理论研究中都有充分的论述,但是具体应用场景则需要测试人员根据测试任务特征和时间安排合理选用。

  作为一名非计算机科班出身的技术小白,两年有余的业务验收测试和系统功能测试收效明显,从最开始只能看着需求和业务规则,结合个人感觉盲写案例,到现在已经可以根据项目特征和业务场景,混搭等价类划分、边界值分析和逻辑覆盖、基本路径各种方法写案例做测试。基于个人工作经历和测试经验,以下对白盒测试、黑盒测试和灰盒测试的应用场景进行适当的推荐,仅供各位同行参考。

一、黑盒测试

  首先从简单的开始,黑盒测试不要求考虑程序的内部逻辑和数据处理,不要求测试人员遍历代码阅读程序,只需要明确输入输出规则,确保系统或模块实现了业务需求。

  (1)建议在对稳定运行的大中型系统进行小规模的功能优化或改造过程中使用黑盒测试方法,只需要明确当前项目的改造点,确认与已有功能的关联性和影响,针对项目改造范围进行测试,非特殊情况无需了解系统或模块的全部处理逻辑。

  (2)建议复杂度和重要性较低的系统,在时间精力有限的情况下优先选用黑盒测试方法进行测试。测试人员首先明确业务需求,使用等价类划分和边界值分析方法完成测试案例设计,适当结合程序特征、个人经验以及冒烟测试情况等对测试案例进行修订补充,在系统无重大问题或异常的情况下,一般黑盒测试即可满足该类系统测试要求。

  (3)建议适当考量测试人员或测试团队专业技术能力以及测试阶段,如在系统功能测试已经完成的前提下,业务方执行的业务验收测试可以使用黑盒测试方法,降低了团队组建成本和测试成本,无需要求业务人员对代码和软件逻辑进行充分学习和掌握。

二、白盒测试

  白盒测试要求测试人员对代码和程序逻辑有相应了解,对测试人员专业背景或能力有一定要求,建议根据项目需求和测试要求选择测试方法。

  (1)一般单元测试及集成测试需要使用白盒测试方法,包括代码检查法、静态结构分析法等,相关测试多由开发人员完成,具体视项目团队分工而定。

  (2)建议针对新建系统或已有系统新增重要模块时使用白盒测试方法,例如逻辑覆盖或基本路径测试法,尤其推荐在有较多校验关系且校验关系间存在嵌套时使用,使用时一般可参考程序代码、详细设计说明书、程序控制流图等相关资料,帮助减少测试人员的分析工作量等。

  (3)建议对重点系统进行架构优化、对公共函数或程序进行改造、对后台或接口内容进行调整时选用白盒测试方法,一方面关注优化改造后对原有程序的改动大小,一方面关注调用方或消费方是否受影响,新版本程序或系统对旧版本的兼容性,避免关联系统由于改造时测试不充分受到影响。

  (4)建议关注测试中的集群现象,对于缺陷或问题集中的功能和模块建议及时由黑盒测试方法改为白盒测试,在缺陷管理过程中及时进行小范围的测试方法调整,同时保证测试效率和测试充分性。

  在两年多的测试工作中,本人主要参与柜台业务系统、客户定制化应用等不同系统或项目的测试工作。其中柜台业务系统因为系统成熟、运行稳定,当前较为常见的是监管或业务等方面要求的小规模优化改造,例如增加校验、增加授权、更改权限级别、减少展示信息等,相关项目大多对当前内容或当前程序逻辑影响较小,通常采用黑盒测试即可。在银行对公业务尤其是大客户服务领域,定制化应用或功能较为常见,运维或客户需求改变导致的小规模优化可以选择黑盒测试方法,而新建系统或模块或功能测试需要尽量充分,白盒测试方法可以用于辅助案例设计,尤其校验关系较多且存在嵌套时,使用基本路径法设计要素级测试案例可以最小化案例数量,同一思路还可以用于设计流程级测试案例。

  近期一次新增模块测试中在流程案例设计就使用了基本路径法,核心交易共有3个不同的流程,3个流程共有4种组合,每个流程涉及最少4支联机交易,最多8支联机交易,每个流程另外涉及最少3个定时交易,各流程起点以外的交易有正反两种状态,一个对象在每个流程中流转时会有15-20种状态,在测试人力有限且项目周期紧张、测试交付延误的情况下,测试方的压力巨大,穷举测试的工作量完全不可接受,要保证案例充分覆盖功能点,使用白盒测试中的基本路径法是非常有必要的,确认程序节点,画出程序控制流图,分析控制流图的环路复杂性,导出基本路径集合并进一步设计测试案例,由此保证测试充分并尽量压缩测试工作量无论对测试人员还是对整体项目都非常有意义。

  总而言之,其实各种方法最终还是为软件系统服务,测试人员可以结合项目情况、时间成本、个人偏好适当选择,“不管黑猫还是白猫,抓得住老鼠才是好猫”,不论使用哪种方法或方法组合,能在适当的时间和成本下发现尽量多的缺陷和问题,保证系统按时上线稳定运行才是最重要的。

推荐阅读

点击阅读☞今天给大家介绍一个功能强大的新工具,不能老让Postman抢了C位!

点击阅读☞白盒测试中的六种覆盖方法

点击阅读☞分享|测试员都在用哪些白盒测试工具?

点击阅读☞机器学习模型黑盒测试之蜕变测试

点击阅读☞黑盒测试|通话费功能性测试方法

白盒测试工具_别再头疼工作效率低!这些超实用的黑盒、白盒测试方法你都用上了吗?...相关推荐

  1. nicetool好工具_外贸精英提高工作效率的8个黑科技工具

    目前10000+人已关注加入我们学习                 01Nicetool http://www.nicetool.net Nicetool是一个高质量工具集合网站,如它网站的slog ...

  2. 工具推荐:程序员必备的 7 个开发工具,让你的工作效率提升200%

    如果要想早点完成自己的工作,就必须借助于一些开发工具来提高自己的工作效率,今天就给大家总结一些工作中常用到的工具. Everything 不知道大家在日常工作中会不会遇到这样的情况,每次找文件的时候总 ...

  3. android效率工具,工具|5款瞬间提升工作效率的APP

    原标题:工具|5款瞬间提升工作效率的APP 好签(iOS / Android) 好签是一款非常实用的手机办公软件,用户可以通过它随时签单,支持超多主流格式文档,线上签单更加方便.使用简单,签字顺滑,更 ...

  4. securecrt使用_使用securecrt提升工作效率的十个技巧

    securecrt是一款功能强大的终端工具,但功能多也造成了过于复杂,很多人只是把它当成一个普通的终端使用,不知道这里面有很多有用的技巧可以提高工作效率.一位老中医多年总结的十大技巧,简单.有效.老司 ...

  5. excel保存快捷键_干货 | 快速提高工作效率的电脑快捷键!

    点击标题下「蓝色微信名」可快速关注 随着科学技术的发展,电脑已经成为每个人生活和工作的必备工具.然而,很多人在使用电脑的过程中非常依赖鼠标,导致双手需要频繁离开键盘,造成工作间歇中断,导致用电脑处理工 ...

  6. 推荐几款工具,提升十倍工作效率

    觉得有用的欢迎点赞,你有其他的好用的软件欢迎留言讨论一起分享! 我这里主要是分享一下使用能提升效率的软件,大致介绍下主要作用,吸引到你的话,你可以自行搜索一下了解那个工具,再选择安装使用. 一.快速搜 ...

  7. 最大化_怎样保证油压缓冲器工作效率最大化?

    对于油压缓冲器,广大使用者在采购前普遍考虑的是油压缓冲器的价格.质量.品牌.挑选出合适的油压缓冲器仅仅是第一步,提高其工作效率,增加产能,才能为企业创造更多价值.要保证油压缓冲器工作效率最大化,需要做 ...

  8. 巧用这些可视化分析工具,让你的工作效率提升50%!

    如果企业白领们穿越到过去,要做的大概就是码码字.打打电话.做做执行,然后葛优躺.非常"幸运"的是,现在互联网鹅们必须是全能超人:码字.做图.排版.搞活动.数据分析.做汇报总结-- ...

  9. 怎么用鼠标选中java中table的某一行_为什么同事的工作效率那么高?学会这些鼠标双击技巧,你也可以的...

    [温馨提示]亲爱的朋友,阅读之前请您点击[关注],您的支持将是我最大的动力! 在Excel表格处理中,经常会看到同事工作效率那么高,甚至点点鼠标就完成了,自己怎么努力却不行. 其实有些Excel技巧还 ...

最新文章

  1. python not instance_python isinstance 判断各种类型的小细节|python3教程|python入门|python教程...
  2. 小白的.Net Core 2.0 ConsoleApp入门(keng)指南(一)
  3. NIPS 2018论文解读 | 基于条件对抗网络的领域自适应方法
  4. boost::serialization模块实现测试 shared_ptr 序列化的测试程序
  5. Guest权限突破8法(整理)
  6. python爬虫好学不_python爬虫好学吗
  7. 拷贝文件到另一台电脑
  8. 使用C语言进行面向对象的开发--GObject入门[7]
  9. jQuery 的第一个例子
  10. 大话一些大二层网络技术新兴术语,并总结它与OpenStack的关系 (by quqi99)
  11. access中布局为阶梯怎么设计_基于Solidworks的阶梯轴类零件参数化设计研究
  12. 针对BT防御方案——飞鱼星路由器
  13. 反向题在测试问卷信效度_运动员积极心理品质结构模型与问卷信效度
  14. Unity3D关于蓄力跳跃
  15. MTK6737功能展示
  16. 拓嘉辰丰:拼多多直通车推广常见问题解析
  17. vscode上利用screen命令跑代码
  18. 思维导图 XMind 闯关之路(第05关)插入外框概要
  19. 堪比N6705和Power Monitor AAA10F 的高精度_高采样率_低功耗测试电源mPower1203
  20. 粒子说区块链7:产业链分析之硬件篇

热门文章

  1. Oracle Client安装
  2. 极端值目标值(exterem or outlier target)对应的核心特征的分布差异分析+结合catboost特种重要度(top10)
  3. 智能睡眠评估系统(包含:睡眠数据特征工程、睡眠评分、睡眠聚类、睡眠可视化分析、睡眠结论存储)
  4. 基于关联规则(Variational Autoencoders)疾病预测系统实战:(pyspark FPGrowth实现频繁项集挖掘、最后给出预测模型topK准确率和召回率)
  5. ExpressionSet类使用
  6. qiime2安装和使用案例
  7. limma包分析差异表达基因
  8. 使用VC++6.0创建MFC对话框程序
  9. r语言ggplot2一夜多图_ggplot2简介
  10. 合肥学院计算机论文,《合肥学院毕业论文模版》.doc