调用底层函数,除了常规的产生单元测试需要的数据外,还有其他测试需求,VU4的底层输入都能一一满足。
很多时候,要测试在某种输入下是否调用某个函数,这在机电控制或通讯领域很常见,可以利用底层输入的call times变量,在表格中设置它的预期调用次数来自动判断。
有时需控制个别测试用例产生指定数据,其他用例调用实际代码,如malloc(),需要让一个测试用例返回NULL,其他用例调用实际代码申请内存,这在嵌入式项目的单元测试中非常常用。不填任何值就会调用实际代码。
底层函数可能存在死循环导致超时,或者可能崩溃,这在嵌入式项目的单元测试,或界面代码的单元测试中很常见,可以用底层输入的skip it变量跳过。
一个测试用例中,可能需要多次调用同一函数(包括循环形成的多次调用),每次需要产生不同的数据,可以用分号隔开多个值,VU4会按实际调用的顺序分配。如值的数量不足,不足部分将使用最后那个。
点击浏览短视频(2分21秒):
C/C++单元测试之底层输入(2):控制测试、跳过、多次调用