C++桩模块和驱动模块详解
2023-06-13 09:11:59 时间
桩模块和驱动模块对于测试和调试使用函数的程序是非常有用的工具。它们允许测试程序中的单个函数,隔离调用该函数的程序部分。
桩模块(Stub)
桩模块(Stub)是一个被调用的虚拟函数,而不是它所代表的实际函数。它通常显示一个测试消息,确认它已被调用,然后就没有其他了。
例如,如果在某个程序中使用了一个桩模块用于代替 showFees 函数,那么它可能如下所示:
// showFees函数的桩模块 void showFees(string memberType, double rate, int months) cout The function showFees was called with arguments:/n Member type: memberType endl rate: rate endl months: months endl; }
桩模块一旦建立,程序就可以使用此桩模块而不是实际的 showFees 函数来模拟运行程序。因此,通过使用桩模块替换实际的函数,可以将测试工作集中在调用该函数的程序部分。
最主要的是,桩模块允许程序员在需要时确定程序是否正在调用一个函数,并确定有效值是否被传递给该函数。如果桩模块代表了返回值的函数,那么它应该返回一个测试值,这有助于确认返回值将被正确处理。
驱动模块(Driver)当调用函数的程序部分被调试到满意时,程序员就可以继续测试和调试实际的函数本身,而这正是驱动模块变得有用的地方。
驱动模块(Driver)是通过简化调用来测试函数的程序。如果函数接收任何实参,驱动模块会传递测试数据。如果函数返回一个值,驱动模块会在屏幕上显示返回值。这样就可以在隔离程序的其余部分的情况下,让程序员看到被测试函数的执行方式。
因此,驱动模块的作用是用来彻底测试函数,它可以使用不同的测试值作为实参重复调用函数。当函数能够按照目标要求执行时,即可将其放入实际的程序中。
22063.html
相关文章
- C++学习——c++逗号操作符说明(附加全部运算符优先级)
- 深入理解C++11_c++ string char
- c++ auto类型_auto C++
- C++构造函数的作用_c++什么是构造函数
- C++11新特性:迭代数组中的元素
- C++stl库_c++库
- c++的链表-C++实现简单链表
- C/C++ Qt 运用JSON解析库 [解析篇]
- 软件开发入门教程网之C++ 标准库
- 【Android NDK 开发】NDK C/C++ 代码崩溃调试 - Tombstone 报错信息日志文件分析 ( 使用 addr2line 命令行工具查找动态库中的报错代码位置 )
- C++ vector容量和大小
- C++ adjacent_find(STL adjacent_find)算法使用详解
- 链栈及(C++)实现
- C++ STL list容器底层实现(详解版)
- Android模拟器(JAVA)与C++socket通讯分享
- c++面试题字符串拷贝函数示例
- c++显式类型转换示例详解