Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/133.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 使用Allegro图形库增强单元测试_C++_Unit Testing_Boost_Allegro - Fatal编程技术网

C++ 使用Allegro图形库增强单元测试

C++ 使用Allegro图形库增强单元测试,c++,unit-testing,boost,allegro,C++,Unit Testing,Boost,Allegro,我试图在Allegro图形库旁边使用boost单元测试,但两者都需要main()更改/覆盖。有人有使用这两种方法的经验吗 编辑2010年1月29日:在我能够验证一个或另一个答案之前,我没有选择答案,因为。。。答案的稀疏性 我不太明白问题所在,你可以在main、allegro设置中运行你想运行的boost函数,然后运行你的测试、allegro拆卸,不管你想拆卸什么样的boost 除非您想对allegro设置功能进行单元测试,否则不会出现问题 您可以澄清或发布特定问题吗?boost.test可以与m

我试图在Allegro图形库旁边使用boost单元测试,但两者都需要
main()
更改/覆盖。有人有使用这两种方法的经验吗


编辑2010年1月29日:在我能够验证一个或另一个答案之前,我没有选择答案,因为。。。答案的稀疏性

我不太明白问题所在,你可以在main、allegro设置中运行你想运行的boost函数,然后运行你的测试、allegro拆卸,不管你想拆卸什么样的boost

除非您想对allegro设置功能进行单元测试,否则不会出现问题


您可以澄清或发布特定问题吗?

boost.test可以与main()一起使用,也可以不与main()一起使用。查看这些宏将使您了解如何正确使用它:

//#define BOOST_TEST_MODULE my_test
//#define BOOST_TEST_MAIN
//#define BOOST_TEST_DYN_LINK
//#define BOOST_TEST_NO_MAIN

我在qt上也遇到了类似的问题,下面是使用共享库在boost 1_44上为我工作的代码

//Testing the lib

//###################################################################################
//Setting up boost testing framework
#define BOOST_TEST_NO_MAIN
#define BOOST_TEST_DYN_LINK
#define BOOST_TEST_MODULE "Unit test for libcommon"

#include <boost/test/unit_test.hpp>
#include <boost/test/test_tools.hpp>
//###################################################################################

#include <QApplication>
#include <QtGui>

using namespace boost::unit_test;

int main(int argc, char *argv[]) {
  (void) argc;
  (void) argv;

  QApplication app(argc, argv);
  QTextCodec::setCodecForTr(QTextCodec::codecForName("utf8"));

  ::boost::unit_test::unit_test_main( &init_unit_test, argc, argv );

  return app.exec();
}
//测试库
//###################################################################################
//建立boost测试框架
#定义BOOST\u TEST\u NO\u MAIN
#定义BOOST\u TEST\u DYN\u链接
#定义BOOST_TEST_模块“libcommon的单元测试”
#包括
#包括
//###################################################################################
#包括
#包括
使用名称空间boost::unit_test;
int main(int argc,char*argv[]){
(无效)argc;
(无效)argv;
QApplication应用程序(argc、argv);
QTextCodec::setcodefortr(QTextCodec::codeforname(“utf8”));
::boost::unit_test::unit_test_main(&init_unit_test,argc,argv);
返回app.exec();
}

谢谢!那是值得一看的地方