【问题标题】:C++ Builder 10.3 Rio - TestframeworkC++ Builder 10.3 Rio - 测试框架
【发布时间】:2018-12-22 21:45:21
【问题描述】:

似乎 C++ builder 10.3.带有一个新的testframework.hppAssert 类不再存在。

谁能告诉我如何使用这个新框架?

我很绝望,因为我写了很多代码,显然 Rio 不是真正兼容的。

例如,用 Builder 10.2.3 编写的以下代码行不再起作用:

Dunitx.Testframework::Assert::IsTrue (result == true);

【问题讨论】:

    标签: c++builder test-framework c++builder-10.3-rio


    【解决方案1】:

    我在 testframework.hpp - 文件中找到了解决方案。现在使用起来容易多了,但你必须知道如何处理它。 embaracdero帮助系统中的描述有误,应予更正。

    【讨论】:

    • 您找到的 Testframework.hpp 文件用于 DUnit。你需要 Dunitx.Testframework.hpp。 获取方法见上文。 DUnit 和 DunitX 是相似但不兼容的测试框架。你显然需要 DUnitX,如果你也需要 DUnitX 的帮助,而不是旧的 DUnit。
    【解决方案2】:

    您似乎找到了 DUnitTestFramework.hpp。但很明显,您的代码之前使用的是 DUnitX。这些是相似但不兼容的测试框架。

    要获得您需要的 Dunitx.Testframework.hpp,只需将 DUnitX.TestFramework.pas 添加到您的 C++Builder 测试项目中(将其添加到项目管理器中) 并完全重新构建您的项目。 Pascal 编译器将为您生成必要的 .hpp 文件。


    但在您做所有这些之前,您可能需要将您的项目复制到一个新文件夹,然后从那里加载它,以确保这一点。这样,旧项目将不会被修改。如有必要,请务必更新项目管理器和 C++ 库设置中的所有路径。


    如果您认为 DUnit 更易于使用(我当然愿意),请继续使用它。但是您将不得不重写测试的某些部分。更多信息可以在 Delphi 帮助文件(和on the web counterpart)和the DUnit website 上找到。

    DUnit 是 Delphi 的前测试框架(因此是 D),但在过去的某个时候,它被更现代的 DUnitX 所取代。但这使用了一些 Delphi 特性(如 Delphi 属性),使其在 C++Builder 中更难使用。 DUnit 仍然是 RAD Studio 安装的一部分。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-02
      • 2020-05-03
      • 2020-08-21
      • 2011-07-31
      • 2011-04-23
      • 2010-09-10
      相关资源
      最近更新 更多