使用Boost :: Test从命令行测试DLL

问题描述:

我正在C++中开发DLL,并且想使用Boost Test Libraries执行该DLL的单元测试。使用Boost :: Test从命令行测试DLL

我发现here可以使用test_runner.exe

如何获得test_runner.exe? 是否有任何方法或位置不需要构建boost

我从BoostPro download page安装了boost 1.47,但是那里没有test_runner.exe。

谢谢。

你可以从源头自己创建一个。它没有额外的依赖关系,只有Boost.Test本身。

  1. 可以引导提升安装
    下载升压来源,解压并运行bootstrap.bat

  2. 然后构建bjam并运行构建命令libs/test/tools/test_runner
    bjam.exe应该存在于解包分布中。
    将当前文件夹切换为libs/test/tools/test_runner并从中运行bjam.exe,并带有所需参数(平台,配置等)。
    输出console_test_runner.exe将在bin.v2\libs\test\tools\console_test_runner

+0

Gennadiy可用,我终于解决了我的首次发行 - 当console_test_runner.exe捕获异常,并输出错误信息,它被调整到512个字符 - 这是由文件不断REPORT_ERROR_BUFFER_SIZE限制boost \ test \ impl \ execution_monitor.ipp。你可以增加它,比如说16384吗? 512是绝对不够的,特别是对于模板类型和使用BOOST_THROW_EXCEPTION有详细的错误信息。 我检查了升压1.52 - 它仍然是512字节。 (我不确定在这里写这个建议是否好主意,但我不熟悉如何提出建议) – sergtk 2012-12-07 01:38:02