如何避免存根和实际代码之间的重复定义

时间:2013-09-17 10:26:09

标签: unit-testing stub code-duplication stubbing stubs

我正在尝试为用C编写的一些遗留代码编写单元测试。我遇到的问题是我经常需要重新定义实际代码中使用的结构,以便在存根代码中使用它们。

例如,假设这是带有我想要存根的函数的头文件:

typedef struct {
    int value;
    int type;
    int format;
} some_struct_t;

int some_function(some_struct_t *pStruct);

在存根代码中,我将不得不重新定义 some_struct_t ,以便在存根实现和单元测试中可见。

在实践中,结构比这个例子大得多。有没有办法避免这种重复?

1 个答案:

答案 0 :(得分:0)

你能尝试声明struct定义是一些头文件并在test中导入该文件吗?