问题标签 [boost-test]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
602 浏览

boost - 记录 Boost.Test 测试用例

有没有办法为使用 Boost.Test 宏定义的测试用例使用文档注释?我可以使用 Doxygen 风格的注释吗,它们会被正确解析吗?

0 投票
3 回答
3421 浏览

boost - 使用 CMake 进行 Boost 测试 - 未定义的 main

我无法在我的 Mac 上构建一个使用 Boost.Test 的小程序,并在 MacPorts 上安装了 Boost/opt/local/lib/

这是我的最小源文件,test.cpp

我的CMakeLists.txt

摘录自make VERBOSE=1

如您所见,它不知道如何链接到 Boost 库。所以我尝试添加到 CMakeLists.txt:

但我只是得到:

通过大量的试验和错误,我发现手动运行它是有效的:

但是经过几个小时的摆弄,我无法从 CMake 构建它。我不在乎它是动态链接还是静态链接,我只想让它工作。

0 投票
1 回答
619 浏览

c++ - Boost 测试框架与 std::cout 的等价物是什么?

我知道在我的单元测试中我应该做

代替

但是如果对于预期的功能std::ostream&怎么办?

所以而不是

我应该用什么代替std::cout

0 投票
1 回答
361 浏览

boost - 在 Boost.Test UTF 中手动或单独执行测试用例

我正在使用 Boost.Test 对我的 C++ 类进行单元测试。而且我已经使用 BOOST_AUTO_TEST_CASE 创建了我的测试用例。但我想在我的代码中手动执行我的测试用例。例如,我有两个测试用例,每个测试用例我想手动执行。我需要为此创建一个测试运行器吗?如果是,我如何创建一个基本的测试运行器来单独执行我的测试用例?

请指教。

非常感谢。

0 投票
2 回答
3387 浏览

c++ - 如何告诉 Boost.Test 在第一个失败的测试用例上停止?

我在几个测试套件中订购了许多 Boost 测试用例。有的测试用例有一个,有的不止一个。

但是,在执行所有测试时,它们都会被执行——无论有多少失败或通过。我知道,我可以通过使用BOOST_REQUIRE而不是BOOST_CHECK. 但这不是我想要的。

在第一个测试用例失败后,如何告诉 Boost 停止整个执行?在运行时解决方案(即运行时参数)上,我更喜欢编译的解决方案(例如,使用全局夹具实现)。

0 投票
2 回答
489 浏览

c++ - 模板类中的 int 模板成员函数

重复这个问题。

我有这样的课:

如果这个类被调用:

它给出了错误:

错误:“)”标记之前的预期主表达式

再次弃用:

我的代码是:

然而,这不会编译,因为 BOOST_AUTO_TEST_CASE_TEMPLATE 正在做一些奇怪的事情......

不推荐使用以下文本:

但是,当我使用以下方法调用该函数时:

我收到错误消息:

绑定的成员函数只能被调用

但是,如果我将 bar 函数包装成类似 void bar1(){return bar<1>();} 的东西,它会起作用。我知道如果在编译期间不知道 T,它将无法编译。但我不知道为什么编译器不够聪明,无法确定 f.bar<1> 中的 1 是静态的?

谢谢!

0 投票
2 回答
1665 浏览

c++ - 在 Boost 测试中重复测试用例多次

有没有办法在 Boost 测试中重复运行一个单元测试或一组单元测试?

假设我有以下内容:

...而且我想someTest使用 setup/teardown 运行 100 次。

0 投票
2 回答
3552 浏览

boost - 在 Boost.Test 中,如何获取当前测试的名称?

Boost.Test,如何获取当前自动测试用例的名称?

例子:

在示例中,我希望变量test_name包含“MyTest”。

0 投票
1 回答
390 浏览

boost - 使用 BoostTest 多次运行单元测试而不退出测试运行器

我想使用 Boost Test 多次运行单元测试而不退出测试运行器。这是演示我想要做什么的伪代码:

第一次unit_test_main调用时,所有的 boost 测试运行良好,但在第二次迭代中,boost 测试抛出异常。

我查看了内部代码,发现每次unit_test_main调用框架都会初始化,如果框架已经初始化,boost测试不喜欢再次初始化框架。

请让我知道是否有任何方法可以在不退出测试运行器的情况下多次运行单元测试。

0 投票
1 回答
1971 浏览

c++ - 如何使用 boost 单元测试打印测试摘要

有没有办法打印在 boost 单元测试中运行的测试的摘要。特别是,是否可以列出失败的测试?

我很难在输出中找到失败的测试(尤其是当测试有自己的输出时)。我已经设置了 BOOST_TEST_LOG_LEVEL 以显示进入/退出,但这还不足以定位失败的测试。