0
单元测试我有2个模块为C项目C函数 - A和B. B具有调用从A.函数模拟当与统一
int B_func() {
if (1 == A_func()) {return 1;}
return 2;
}
我使用统一测试这些功能模块。
TEST(B, test_b) {
TEST_ASSERT_EQUAL(1, B_func())
}
当我测试模块B时,我想模拟A_func,因此它会使用我的实现并更改返回值。有没有办法做到这一点,而无需更改模块B的源代码?
我看不到您的问题。该函数在B中没有实现。那么为什么不呢? (以及为什么模拟,只需更改'A_func'。) – Olaf
我不想更改A_func,因为它已经是项目的一部分并且已链接进去。我想告诉B_func忽略A_func的原始实现,即在B的单元测试中模拟A_func ... –