一个小背景:我希望对构建到共享目标文件中的代码进行单元测试,比如libabc。此代码还调用libjson-c和libcurl函数。
我计划为产品代码中的每个函数编写函数式测试,模拟从libabc、libjson-c和libcurl对其他函数的调用。现在,我不能在一个测试文件中安排对给定文件a.c的所有测试,因为在每个测试中,我都需要从a.c模拟不同的函数。
此外,在一个测试中,我希望模拟对libjson-c和libcurl的所有函数调用,这样就不必链接(gcc -lcurl -ljson-c)依赖项,这需要为从a.c调用的所有函数编写__wrap函数。但是,由于每个测试用例都希望在包装的函数中包含一些特定的代码,所以我不能一劳永逸地将它们包装起来。
关于CMocka的测试是如何编写和安排的,有什么想法吗?我是否应该创建一个单独的测试文件,该文件在可执行文件中编译,用于产品代码函数的测试?
发布于 2019-08-20 09:35:56
我不熟悉Cmocka,但我真的很喜欢cmocks的让渡,并且每天都会用到它。
https://stackoverflow.com/questions/57557816
复制相似问题