使用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本身。
可以引导提升安装
下载升压来源,解压并运行bootstrap.bat
。然后构建
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
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