【C++ UnitTest】为什么要学习UnitTest

在没进E\\之前,我根本没听过单元测试这个名词,也不知道这个东西和写代码有什么任何关联。直到某天修改业务代码并给老外CR的时候,突然被要求写单元测试(以下简称UT)才肯给我CR+1。我第一反应是UT是啥?打开G\\搜索并学习后,更觉得写这个没有必要。直到三个月后开发新的case的时候一直觉得UT完全没必要,纯粹浪费时间。

什么是单元测试

通常情况下,按照程序开发的基本流程,是先编写业务逻辑的实际代码,然后再编写相应的单元测试。这是因为单元测试是用来验证代码的正确性的,而编写单元测试需要依赖于已经存在的代码。
软件基本的开发流程包括:需求分析,系统框架和各模块之间的设计,编码,测试,调试和fix bug,部署维护等。先后顺序没有严格的定义,不同公司对细节的要求也没有严格规范,懂得都懂。。
而测试又和UT不同,测试又分业务逻辑上的黑白盒测试,这是产品层面的测试,软件开发人员对自己的代码也会进行测试,比如固定格式的输出或者满足时序逻辑的结果等。
当谈及软件开发中的单元测试时,我们指的是针对软件中的最小可测试单元进行的测试。这个最小单元通常是函数、方法或者类中的一个特定功能单元。
尽管单元测试通常是在编写业务逻辑代码之后进行的,但它们对于确保代码的质量和稳定性至关重要。通过编写全面的单元测试,可以帮助开发人员及早发现和修复代码中的问题,提高代码的可靠性和可维护性。

为什么要单元测试

简而言之,单元测试应该尽早地发现代码中的问题,而不是等到整个软件系统集成后才发现。通过及早发现问题,可以减少问题修复的成本,并且确保代码的质量。
以前冲浪看过某大佬对UT的另一层理解是测试驱动开发,也就是TDD(Test-Driven Development)。是一种软件开发方法论,其核心思想是在编写实际的业务逻辑代码之前,先编写针对该代码的单元测试,然后再编写足够的代码使得这些测试通过。
好的单元测试,在你阅读之后可以迅速帮你理解相应软件模块的执行顺序和业务逻辑。甚至不需要去看源代码,包括对变量的参数检测,输出信息要求,特殊逻辑的判断等等。。

既然 老板以及TL觉得 UT如此重要,后面将介绍如何编写测试用例以及运行测试用例。

  • 8
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值