【发布时间】:2015-09-08 22:55:48
【问题描述】:
我有一些 C 代码(我的测试对象)正在与一些外部库进行交互。为了做一些组件测试,我为外部库编写了一个存根。我正在使用 google 测试框架 来编写测试用例。我在我的测试对象和谷歌测试之间设置了一些信号,这意味着我有 2 个进程。 1个用于谷歌测试,1个用于我的测试对象。一切正常。
现在我想使用 Fake Function Framework (fff.h) 而不是使用 存根库,它会在编译时自动生成存根。我知道如何生成存根,但问题是如果我们有一个进程,它会起作用,但我想将它用于多个进程。由于存根函数是在编译时生成的,有没有办法从另一个进程访问它们?
【问题讨论】:
-
分享您的研究对每个人都有帮助。告诉我们您尝试了什么以及为什么它不能满足您的需求。这表明您已经花时间尝试帮助自己,它使我们免于重复明显的答案,最重要的是它可以帮助您获得更具体和相关的答案!另见how to ask
-
换句话说,您能否详细说明您是如何尝试使用 FFF 的以及您遇到了哪些错误/问题
-
我已经为外部库编写了一个存根,花了几个星期。 fff 用于自动生成存根函数,这将减少一些开销工作。无需编写大型存根库。我试图了解当涉及 2 个进程时如何使用此框架。
-
--> 你用它做了什么尝试,你遇到了什么真正的问题?
-
正如我所描述的 fff 将生成存根函数,它们将在编译期间在我的 test_process 中生成。我正在向我的测试对象发送信号,该对象将处理信号并调用我存根的外部库函数。现在的问题是这些存根函数在第二个进程中不可用。
标签: c++ c unit-testing testing