29得票4回答
如何在Catch框架中使用浮点数容差?

我正在使用Catch测试框架。 在介绍性博客文章中,作者提到了以下功能: 支持浮点数容差,使用方便 我没有找到任何关于如何执行此操作的文档。在Catch中如何实现这一功能?

25得票2回答
捕获lib(单元测试)和CTest(CMake)集成

我正在寻找关于如何将CatchLib 成功集成到CMake测试(Ctest)中的成功案例。据我了解,这是一个额外的CMake脚本,需要解析应用程序输出?是否已有人编写过此脚本并分享过呢? ================================================== ...

15得票2回答
如何在Catch2中使用CMake?

我从Catch2的示例中尝试使用cmake运行此示例,我的项目结构如下: /factorial +-- CMakeLists.txt +-- /bin +-- /include | +-- catch.hpp | +-- fact.hp...

12得票1回答
使用CATCH C++单元测试框架测试两个std::vectors是否相等

我刚开始使用CATCH,我想知道如何测试两个std::vectors是否相等。 我的非常幼稚的尝试如下:#define CATCH_CONFIG_MAIN #include "catch.hpp" #include <vector> TEST_CASE( "are vector...

11得票2回答
使用Catch C++进行单元测试会影响我的main()函数

我是单元测试的新手,决定使用Catch框架来进行C++测试,因为它似乎很容易与其头文件集成。然而,我有一个多文件二叉搜索树程序(文件包括:main.cpp,Tree.h,Tree.hxx,TreeUnitTests.cpp,catch.hpp)。如果我注释掉main.cpp中的int main...

9得票1回答
在使用C++的Catch测试框架时编译错误为"error: expected ';' at end of declaration list"。

我正在尝试通过用C++实现一些简单的算法来学习它。为了测试这些算法,我想使用Catch2。这是一个二分查找程序: #define CATCH_CONFIG_MAIN #include "catch.hpp" #include <iostream> using namespace ...

9得票3回答
使用C++ Catch测试浮点数std::vector

在Catch C++单元测试框架中,有没有可能比较基于浮点类型的std::vectors?我知道我可以比较两个容器的大小和每个元素(使用Approx),但这很混乱。 整数类型向量的比较可以正常工作。 现在,我必须使用这样的结构 REQUIRE(computed.size() == exp...

8得票1回答
如何使我的cmake目标对于catch2测试和项目运行更具可扩展性和合理性?

经过大量的辛勤工作和研究,我成功地创建了多个cmake目标,以便将我的程序运行与代码测试分离。但是,我不喜欢我所做的,因为我认为在CMakeList.txt文件中存在冗余。 目前,我必须将每个新源文件添加到两个目标中,以便源目标可以使用该文件进行构建,而测试目标也可以构建,因为它们需要测试该...

8得票2回答
如何在Catch2中比较浮点数

我正在使用Catch v2.13.1 比较float值的正确方式是什么?我认为下面的代码会失败,但是它们都通过了测试。 REQUIRE(1147332687.7189338 == Approx(1147332688.4281545).margin(0.0001)); REQUIRE(114...

7得票1回答
在 Visual Studio 中使用 Catch2 进行单元测试的最佳实践

我刚开始学习C++单元测试,想要得到一些关于此方面的建议。 我使用Visual Studio 2019进行开发,并选择了Catch2作为我的测试库,同时也安装了Catch2的测试适配器。 我在GitHub上阅读了Catch2和Test Adapter for Catch2的文档,但是我仍然不...