0

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

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

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

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

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

2 回答 2

0

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

于 2018-12-22T22:20:29.600 回答
0

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

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


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


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

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

于 2018-12-23T11:39:30.923 回答