在软件测试中,为了充分利用现有的时间和资源,提高测试效率和充分性,有很多方法可以帮助测试人员完成测试工作,促进项目进度,其中最常见的是白盒测试和黑盒测试。现有的理论研究充分讨论了白盒测试和黑盒测试的概念和常用方法,但具体的应用场景需要测试人员根据测试任务的特点和时间安排合理选择。
作为一名非计算机专业的技术小白,他在两年多的业务验收测试和系统功能测试中取得了显著成绩。从一开始,他只能着眼于需求和业务规则,结合个人感受盲目撰写案例。到目前为止,他可以根据项目特点和业务场景基本路径混合匹配等价类划分、边界值分析和逻辑覆盖等多种方法编写测试用例。根据个人工作经验和测试经验,以下白盒测试、黑盒测试和灰盒测试的应用场景仅供参考。
1、黑盒测试
首先,从一个简单的开始,黑盒测试不需要考虑程序的内部逻辑和数据处理,测试人员也不需要遍历代码读取程序。他们只需要澄清输入和输出规则,以确保系统或模块满足业务需求。
(1)建议在稳定运行的大中型系统的小规模功能优化或改造过程中使用黑盒测试方法。只需明确当前项目的转型点,确认与现有功能的相关性和影响,测试项目的转型范围。在特殊情况下,无需了解系统或模块的所有处理逻辑。
(2)建议对于复杂度和重要性较低的系统,在时间和能量有限的情况下,应首选黑盒测试方法。测试人员首先定义业务需求,并使用等价类划分和边界值分析方法来完成测试用例结合项目特点、个人经验和烟雾测试,设计、修改和补充测试用例。当系统无重大问题或异常时,一般黑盒测试可以满足此类系统的测试要求。
(3)建议适当考虑测试人员或测试团队的专业和技术能力,以及测试阶段,如系统中功能测试在已经完成的前提下,业务方进行的业务验收测试可以使用黑盒测试方法,降低了团队组建成本和测试成本,无需业务人员充分学习和掌握代码和软件逻辑。
2、白盒试验
白盒测试要求测试人员对代码和程序逻辑有相应的理解,对测试人员的专业背景或能力有一定的要求。建议根据项目要求和测试要求选择测试方法。
(1)通用单元测试和集成测试需要使用白盒测试方法,包括代码检查方法、静态结构分析方法等。大多数相关测试由开发人员完成,具体取决于项目团队的分工。
(2)在为新系统或现有系统添加重要模块时,建议使用白盒测试方法,如逻辑覆盖或基本路径测试方法。当存在多个验证关系且验证关系之间存在嵌套时,尤其建议使用它。一般来说,您可以参考程序代码、详细设计规范、程序控制流程图等相关资料,帮助减少测试人员的分析工作量。
(3)建议在优化关键系统架构、转换公共功能或程序、调整背景或界面内容时,选择白盒测试方法。一方面要注意优化改造后对原程序更改的大小,另一方面要注意调用方或消费者是否受到影响,以及新版本的程序或系统与旧版本的兼容性,避免在转换过程中由于测试不足而影响相关系统。
(4)建议在测试中注意聚类现象。对于存在缺陷或问题的功能和模块,建议及时将黑盒测试方法改为白盒测试缺陷管理在此过程中,应及时进行小规模试验方法调整,同时确保试验效率和充分性。
在两年多的测试中,我主要参与了柜台业务系统、客户定制应用等不同系统或项目的测试。由于柜面业务系统运行成熟稳定,目前更常见的是监管或业务所需的小规模优化改造,如增加验证、增加授权、变更权限级别、减少显示信息、,大多数相关项目对当前内容或当前程序逻辑影响不大,通常使用黑盒测试。
定制应用程序或功能在银行企业业务中很常见,尤其是在关键客户服务领域。对于运行维护或客户需求变化引起的小规模优化,可以选择黑盒测试方法,而新系统或模块或功能测试需要尽可能全面。白盒测试方法可用于辅助案例设计,尤其是当存在许多验证关系和嵌套时,使用基本路径方法设计元素级测试案例可以最大限度地减少案例数量。同样的想法也可以用于设计过程级测试用例。
在最近的一个新模块测试中,基本路径方法被用于流程案例设计。核心事务有三个不同的流程,这三个流程有四种组合。每个流程涉及至少四项在线交易,最多八项在线交易。每个流程还涉及至少三个定时事务。每个流程起点之外的事务有正状态和负状态,当一个对象在每个流程中流动时,它将有15-20个状态。
在测试人力有限、项目周期紧张、测试交付延迟的情况下,测试方的压力巨大,彻底测试的工作量完全不可接受。为了确保用例完全覆盖功能点,在白盒测试中使用基本路径方法,识别程序节点,绘制程序控制流程图,分析控制流程图的循环复杂度,导出基本路径集,并进一步设计测试用例是非常必要的,从而保证测试的充分性,尽可能减少测试工作量,这对测试人员和整个项目都具有重要意义。
总之,事实上,各种方法最终服务于软件系统。测试人员可以结合项目条件、时间成本和个人偏好做出适当的选择;不管是黑猫还是白猫,好猫都能抓老鼠;,无论采用哪种方法或方法的组合,最重要的是在适当的时间和成本内发现尽可能多的缺陷和问题,确保系统按时上线并稳定运行。
请注意+私人信件回复:“测试”可以免费获得软件测试学习材料。
最新评论