我有一个包含网络层和业务逻辑实现的整体 C 文件,我想将其拆分为分别具有网络和业务逻辑的文件。
我只想对业务逻辑进行单元测试,而不深入网络层。这是一个问题。在这种情况下,来自文件 A 的方法将调用来自文件 B 的方法,反之亦然。
我需要用存根替换网络层文件中的方法。在C++中,C#网络层可以用接口类来实现,但是在C中怎么实现呢?有没有优雅的解决方案?
我有一个包含网络层和业务逻辑实现的整体 C 文件,我想将其拆分为分别具有网络和业务逻辑的文件。
我只想对业务逻辑进行单元测试,而不深入网络层。这是一个问题。在这种情况下,来自文件 A 的方法将调用来自文件 B 的方法,反之亦然。
我需要用存根替换网络层文件中的方法。在C++中,C#网络层可以用接口类来实现,但是在C中怎么实现呢?有没有优雅的解决方案?
如果您的代码包含在不同的 .c 文件中,那么您可以在构建测试时简单地替换不同的 .c 文件。
任何其他解决方案都太辛苦了。
“abc.h”
int function a();
int function b();
//abc.h结束
“新的.c”
#include"abc.h"
int function a(){
//do something
return 0;
}
//new.c 结束
“主要.c”
#include"abc.h"
int main(){
a();
return 0;
}