C++基础学习之12 - 测试驱动开发

本文介绍了测试驱动开发(TDD)的概念,强调在编写功能代码前先写测试代码,通过测试来驱动开发,以提高代码质量和效率。TDD的基本流程包括新增测试、运行测试、实现功能、通过测试和代码重构。通过一个C++实例展示了如何在实际开发中应用TDD。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        测试驱动开发,英文全称 Test-Driven Development,简称TDD,是一种不同于传统软件开发流程的新型的开发方法。它要求在编写某个功能的代码之前先编写测试代码,然后只编写使测试通过的功能代码,通过测试来推动整个开发的进行。这有助于编写简洁可用和高质量的代码,并加速开发过程。

        测试驱动开发的基本过程如下:

1. 快速新增一个测试;

2. 运行所有的测试(有时候只需要运行一个或一部分),发现新增的测试不能通过;

3. 做一些小小的改动,尽快地让测试程序可运行,为此可以在程序中使用一些不合情理的方法;

4. 运行所有的测试,并且全部通过;

5. 重构代码,以消除重复设计,优化设计结构简单来说,就是不可运行/可运行/重构——这正是测试驱动开发的口号。

        上述定义来自百度百科,感谢 李彦宏。

        那么在实际开发中,我们怎么样才能做到这一步呢?我们以下面一个例子来说明:

.h 头文件


/** 线程类*/
class ThreadX
{
public:
	ThreadX(int nPriority = NormalPriority);
	~ThreadX();

    bool
0.基础基础 |-学习WIN64驱动开发的硬件准备 |-配置驱动开发环境 ------------------------------ 1.驱动级HelloWorld |-配置驱动测试环境 |-编译和加载内核HelloWorld ------------------------------ 2.内核编程基础 |-WIN64内核编程的基本规则 |-驱动程序与应用程序通信 |-内核里使用内存 |-内核里操作字符串 |-内核里操作文件 |-内核里操作注册表 |-内核里操作进线程 |-驱动里的其它常用代码 ------------------------------ 3.内核HOOK与UNHOOK |-系统调用、WOW64与兼容模式 |-编程实现突破WIN7的PatchGuard |-系统服务描述表结构详解 |-SSDT HOOK和UNHOOK |-SHADOW SSDT HOOK和UNHOOK |-INLINE HOOK和UNHOOK ------------------------------ 4.无HOOK监控技术 |-无HOOK监控进线程启动和退出 |-无HOOK监控模块加载 |-无HOOK监控注册表操作 |-无HOOK监控文件操作 |-无HOOK监控进线程句柄操作 |-使用对象回调监视文件访问 |-无HOOK监控网络访问 |-无HOOK监视修改时间 ------------------------------ 5.零散内容 |-驱动里实现内嵌汇编 |-DKOM隐藏进程+保护进程 |-枚举和隐藏内核模块 |-强制结束进程 |-强制读写进程内存 |-枚举消息钩子 |-强制解锁文件 |-初步探索PE32+格式文件 ------------------------------ 6.用户态HOOK与UNHOOK |-RING3注射DLL到系统进程 |-RING3的INLINE HOOK和UNHOOK |-RING3的EAT HOOK和IAT HOOK ------------------------------ 7.反回调 |-枚举与删除创建进线程回调 |-枚举与删除加载映像回调 |-枚举与删除注册表回调 |-枚举与对抗MiniFilter |-枚举与删除对象回调
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值