Parasoft C++test使用教程:桩函数
桩函数概述
桩函数主要实现替代原函数的功能,使得单元测试过程中能将被测功能与外部依赖隔离。桩函数是单元测试的常用技术,它主要目的有二:
一是将不可控的、费时的实际系统隔离,例如访问网络、数据库、硬件等;二是将复杂的底层系统隔离,采用相对简单的模拟系统来代替。当被调函数不会影响当前测试函数的功能行为的时候,桩函数能够被使用,以使得单元测试的效率更高。
自定义桩函数可以带来的好处在于:调用原函数可能其返回值为一个固定值,不能返回一个期望值,以使得测试不同的代码分支。而桩函数的返回值,可由用户自由控制,因而具备更大的灵活性。这里有对桩函数较详细的解释:
桩函数可自动生成,也可用户自定义,自动生成的桩函数与自定义的桩函数其主要差别在于:自定义的桩函数调用优先级别高于原函数,原函数的优先级别高于自动生成的桩函数。
自动生成桩函数
选中要生成桩函数的源文件,右键>Parasoft>测试执行>内建>Unit Testing>File Scope>Generate stub(file Scope)
选中要生成桩函数的源文件,右键>Parasoft>测试执行>内建>Unit Testing>File Scope> Collect stub Information(file Scope)
在工程目录下我们可以看到自动生成的桩函数:
点击工具栏的Parasoft选项>显示图示>桩函数,可以看到:
用户自定义桩函数
如下图所示,在需要建立用户桩函数的函数上右键,选择“创建用户桩函数”
给用户桩函数命名之后点击完成。这个时候在工程目录下我们可以看到:
双击用户函数,这个时候就可以任意修改桩函数返回我们想要的结果了:
parasoft开年大促85折起