我有一个非常简单的Boost单元测试如下:
#define BOOST_TEST_DYN_LINK
#define BOOST_TEST_MODULE myModule
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE(universeInOrder)
{
BOOST_CHECK(true);
}
编译得很好,没有任何问题。但是,当我运行应用程序时,控制台视图没有输出,控制台视图显示应用程序已终止。我尝试通过--log_level=all
将日志级别设置为程序参数,但没有效果。但是,当我从命令行运行我的可执行文件时,我看到了预期的输出。我也不能调试程序,这是一个非常关键的问题。我使用的是Eclipse 3.7, MinGW 4.6和Boost 1.52。任何想法吗?
编辑以下是我的编译器参数:
g++ -IC:Boostboost_1_52_0 - 0 -g3 -Wall -c -fmessage-length=0 -o srcTest1。o . . src Test1.cpp
g++ -LC:Boostboost_1_52_0stagelib -o MinGWUnitTestProject.exe srcTest1. exeo -llibboost_unit_test_framework-mgw46-d-1_52
问题是,当在Eclipse中执行测试时,Boost单元测试库不在执行路径上。我通过修改我的"运行配置"来解决这个问题,将Boost单元测试库的目录添加到"Path"环境变量中。它现在运行了,并给了我输出,以及允许我调试。