单元测试之白盒测试方法——代码审查

简介:
我所在公司内目前还没有 单元测试 ,前两天测试某系统的FTP上传功能时,发现其软件的流程设计有问题,进而觉得单元测试对系统还是很重要的,今天又在网上查看了很多关于单元测试的 文章 ,发现现在做单元测试的公司还真的不是很多呀。原因之一单元测试的bug发现率太低使得公司忽视了这一块;再就是公司内没有一个好的单元测试流程。鉴于上面提到的两个原因及公司现在的环境(流程的可行性),我想出了以下的 白盒测试 流程。简称单元测试之白盒测试方法( 代码审查 )。

  首先先说一下测试中需要出的文档。

  在单元测试前可以进行代码规范性审查。注:可以对所有代码进行规范性审查,也可以对重点代码进行规范性审查。此步骤可裁剪。

  1、单元测试申请。注明测试的功能点,时间,各功能点测试原因等。

  (1)测试功能点

  (2)测试进度

  (3)每个功能点的测试原因

  2、制定单元测试计划。在 许多资料中定义单元测试中的单元时各不相同。有用模块的,有用函数的,有用类的等。偶在这里为了可操作性,再就是偶测试的系统都是应用软件,很重视界面的 操作,所以偶将单元定义为界面上的功能性操作。如添加按钮等。当然不会是这么简单的。偶只是将比较复杂的一些操作写入了单元测试计划中。单元测试的计划模 板如下:

  (1)定义单元测试功能点。如(ftp上传功能)

  (2)功能点需求规格说明书。

  (3)功能点测试时间。

  (4)功能点测试的组织方式及人员。

  (5)功能点测试采用的方法。

  (6)功能点测试的通过标准

  3、单元测试设计。在单元测试设计中主要由开发人员将其程序的设计思路,即流程图画出。

  (1)功能点需求。

  (2)功能点设计流程图

  (3)功能点设计数据流图

  (4)功能点伪代码(可裁剪的)

  4、单元测试用例这一部分主要由测试人员根据功能点需求进行测试用例的设计

  (1)功能点需求

  (2)测试用例设计方法

  (3)测试用例

  5、评审人员的bug记录

  (1)测试功能点

  (2)测试bug记录。

  6、单元测试报告。这一部分由开发人员写单元测试用例报告,包括本次单元测试发现的bug类型,单元测试中拒绝bug的原因,单元测试情况等。

   然后再提一下测试的组织方式。由项目经理或者系统设计人员准备单元测试申请,单元测试计划,单元测试设计(单元测试设计也可以由开发人员准备),准备好 以上文档后,提交测试部门;测试人员根据上面的文档出单元测试用例(单元测试用例也可以在需求出来以后就出,此处可以灵活变通);然后测试人员根据上面的 文档检查设计中的bug,填写bug记录单;测试人员根据bug记录单组织专家评审(项目经理、设计人员等),专家针对测试人员测试出的bug进行讨论, 在评审中专家也可以提出新的bug记录到bug记录单中,最后在评审中达成协议,bug记录单中的问题哪些修复,哪些不修复怎样处理等,最后由开发人员修 改bug记录单中的问题,修改完后交给测试人员,测试人员可以用黑盒测试的方法验证bug记录单中的问题是否修改。验证完后,由开发人员填写单元测试报告。单元测试完成。

  累死了,终于完成了,希望大家多提宝贵意见。


本文出自seven的测试人生公众号最新内容请见作者的GitHub页:http://qaseven.github.io/

目录
相关文章
|
9月前
|
测试技术 开发者 Python
Python单元测试入门:3个核心断言方法,帮你快速定位代码bug
本文介绍Python单元测试基础,详解`unittest`框架中的三大核心断言方法:`assertEqual`验证值相等,`assertTrue`和`assertFalse`判断条件真假。通过实例演示其用法,帮助开发者自动化检测代码逻辑,提升测试效率与可靠性。
595 1
|
9月前
|
机器学习/深度学习 人工智能 自然语言处理
如何让AI更“聪明”?VLM模型的优化策略与测试方法全解析​
本文系统解析视觉语言模型(VLM)的核心机制、推理优化、评测方法与挑战。涵盖多模态对齐、KV Cache优化、性能测试及主流基准,助你全面掌握VLM技术前沿。建议点赞收藏,深入学习。
3022 8
|
编解码 缓存 Prometheus
「ximagine」业余爱好者的非专业显示器测试流程规范,同时也是本账号输出内容的数据来源!如何测试显示器?荒岛整理总结出多种测试方法和注意事项,以及粗浅的原理解析!
本期内容为「ximagine」频道《显示器测试流程》的规范及标准,我们主要使用Calman、DisplayCAL、i1Profiler等软件及CA410、Spyder X、i1Pro 2等设备,是我们目前制作内容数据的重要来源,我们深知所做的仍是比较表面的活儿,和工程师、科研人员相比有着不小的差距,测试并不复杂,但是相当繁琐,收集整理测试无不花费大量时间精力,内容不完善或者有错误的地方,希望大佬指出我们好改进!
1304 16
「ximagine」业余爱好者的非专业显示器测试流程规范,同时也是本账号输出内容的数据来源!如何测试显示器?荒岛整理总结出多种测试方法和注意事项,以及粗浅的原理解析!
|
测试技术
软考软件评测师——可靠性测试测试方法
软件可靠性是指软件在规定条件和时间内完成预定功能的能力,受运行环境、软件规模、内部结构、开发方法及可靠性投入等因素影响。失效概率指软件运行中出现失效的可能性,可靠度为不发生失效的概率,平均无失效时间(MTTF)体现软件可靠程度。案例分析显示,嵌入式软件需满足高可靠性要求,如机载软件的可靠度需达99.99%以上,通过定量指标评估其是否达标。
|
消息中间件 缓存 监控
性能测试怎么做?方法、流程与核心要点解析
本文系统阐述了性能测试的核心方法论、实施流程、问题定位优化及报告编写规范。涵盖五大测试类型(负载验证、极限压力、基准比对、持续稳定性、弹性扩展)与七项关键指标,详解各阶段任务如需求分析、场景设计和环境搭建,并提供常见瓶颈识别与优化实战案例。最后规范测试报告内容框架与数据可视化建议,为企业级实践提出建立基线库、自动化回归和全链路压测体系等建议,助力高效开展性能测试工作。
|
人工智能 自然语言处理 测试技术
AxBench:斯坦福大学推出评估语言模型控制方法的基准测试框架
AxBench 是由斯坦福大学推出,用于评估语言模型可解释性方法的基准测试框架,支持概念检测和模型转向任务,帮助研究者系统地比较不同控制技术的有效性。
456 5
AxBench:斯坦福大学推出评估语言模型控制方法的基准测试框架
|
测试技术 开发者 UED
探索软件测试的深度:从单元测试到自动化测试
【10月更文挑战第30天】在软件开发的世界中,测试是确保产品质量和用户满意度的关键步骤。本文将深入探讨软件测试的不同层次,从基本的单元测试到复杂的自动化测试,揭示它们如何共同构建一个坚实的质量保证体系。我们将通过实际代码示例,展示如何在开发过程中实施有效的测试策略,以确保软件的稳定性和可靠性。无论你是新手还是经验丰富的开发者,这篇文章都将为你提供宝贵的见解和实用技巧。
|
JSON Dubbo 测试技术
单元测试问题之增加JCode5插件生成的测试代码的可信度如何解决
单元测试问题之增加JCode5插件生成的测试代码的可信度如何解决
331 2
单元测试问题之增加JCode5插件生成的测试代码的可信度如何解决
|
IDE 测试技术 持续交付
Python自动化测试与单元测试框架:提升代码质量与效率
【9月更文挑战第3天】随着软件行业的迅速发展,代码质量和开发效率变得至关重要。本文探讨了Python在自动化及单元测试中的应用,介绍了Selenium、Appium、pytest等自动化测试框架,以及Python标准库中的unittest单元测试框架。通过详细阐述各框架的特点与使用方法,本文旨在帮助开发者掌握编写高效测试用例的技巧,提升代码质量与开发效率。同时,文章还提出了制定测试计划、持续集成与测试等实践建议,助力项目成功。
348 5