测试驱动开发中的间谍与模拟对象
1. 使用间谍验证输出
在软件开发中,测试是确保代码质量的重要环节。对于需要打印输出的代码,我们可以使用间谍(Spy)来验证输出结果。以下是一些相关的代码实现:
void FormatOutputSpy_Destroy(void)
{
if (buffer == 0)
return;
free(buffer);
buffer = 0;
}
int FormatOutputSpy(const char * format, ...)
{
int written_size;
va_list arguments;
va_start(arguments, format);
written_size = vsnprintf(buffer + buffer_offset,
buffer_size - buffer_used, format, arguments);
buffer_offset += written_size;
buffer_used += written_size;
va_end(arguments);
return 1;
}
const char * FormatOutputSpy_GetOutput(void)
{
return buffer;
}
我们以循环缓冲区(CircularBuffer)为例,它可以创建指定容量的缓冲区,添加和移除整数,并且需要按从旧到新的顺序打印缓冲区内容而不改变其内容。 <
超级会员免费看
订阅专栏 解锁全文
45

被折叠的 条评论
为什么被折叠?



