首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件测试 >

关于cppunit不支持unicode的解决,该怎么处理

2012-02-03 
关于cppunit不支持unicode的解决使用cppunit作单元测试,却发现cppunit并不支持unicode编码,怎么办在编译时

关于cppunit不支持unicode的解决
使用cppunit作单元测试,却发现cppunit并不支持unicode编码,怎么办
在编译时,选用了按unicode编码编译,但是在用的时候还是不行,出现以下错误:

1>e:\lxl\代码备份\qtexpert\qtexpt0920\mfcexpttest\parsestrsimpletestcase.cpp(4) : error C2664: “CppUnit::AutoRegisterSuite<TestCaseType>::AutoRegisterSuite(const std::string &)”: 不能将参数 1 从“std::wstring”转换为“const std::string &”
1> with
1> [
1> TestCaseType=CParseStrSimpleTestCase
1> ]
1> 原因如下: 无法从“std::wstring”转换为“const std::string”
1> 没有可用于执行该转换的用户定义的转换运算符,或者无法调用该运算符

错误出在:
CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(CParseStrSimpleTestCase,CParseStrSimpleTestCase::getSuiteName());
这一句上

如何能够编译unicode版本的cppunit呢,或者如果编译不了,有什么替代方案(除了换掉cppunit)?
补充一下:vc2005+cppunit1.12.1

[解决办法]
让getSuiteName()返回string类型不行么?
[解决办法]
“如果使用unicode的话必须使用相应版本的TestRunner和CPPUnit的LIB和DLL文件”

供参考 http://bbs.51testing.com/viewthread.php?tid=109075

热点排行