【问题标题】:How to migrate Cppunit tests into GoogleTest?如何将 Cppunit 测试迁移到 GoogleTest?
【发布时间】:2010-04-29 11:59:33
【问题描述】:

我有一堆用 CPPunit 编写的模块测试,其中一些是手工创建的模拟。我正在寻找一种尽可能顺利地将它们迁移到 GoogleTest 的方法。 你试过这样的操作吗? 需要付出什么努力?

【问题讨论】:

    标签: c++ unit-testing testing cppunit googletest


    【解决方案1】:

    Google TestCppunit 似乎在调用测试时共享相同的语法,但我怀疑该语法有太多差异。

    我几乎可以肯定你不能以某种方式自动化它,并且这个操作需要重新考虑和重新组合你的测试以遵循 Google Test 语义(如果你使用专门的东西来创建你的模拟,然后将它们移植到 @987654324 @ 需要更多的努力,因为Google Mock 的方法不是显而易见的,实际上很复杂)。

    我会说你最好重新考虑以下问题:“我为什么需要移植我的测试”、“这个操作有什么好处”和“我真的想研究一个全新的测试框架吗?然后出于某种目的重写我所有的测试”。

    【讨论】:

      【解决方案2】:

      您似乎可以从另一个框架(cppunit,在您的情况下)使用谷歌测试: https://code.google.com/p/googletest/wiki/AdvancedGuide#Letting_Another_Testing_Framework_Drive

      【讨论】:

        【解决方案3】:

        在某种程度上我同意@Kotti。自动转换对于测试来说并非易事,因此您需要考虑现有测试的数量是否值得付出努力。

        我是 Googlemock 框架的忠实拥护者,如果您在手动模拟方面进行了大量投资,那么将您的模拟移植到 Googlemock 可以大大降低您的持续测试成本。

        如果这是考虑移植的原因,那么请记住 Googlemock 可以与其他测试框架一起使用——而不仅仅是 Googletest。 (注:我没有使用过这个功能,但是看过网上的报道它的使用)

        【讨论】:

        • 我已经做到了——使用 Googlemock 和 CppUnit 真的很简单
        猜你喜欢
        • 2011-12-16
        • 1970-01-01
        • 2011-12-31
        • 2011-11-04
        • 1970-01-01
        • 1970-01-01
        • 2020-04-24
        • 2022-10-19
        • 2019-09-14
        相关资源
        最近更新 更多