CppUtest示例链接错误

时间:2011-07-23 01:40:58

标签: c unit-testing frameworks cpputest

--------------------Configuration: AllTests - Win32 Debug--------------------
Linking...
AllTests.obj : error LNK2001: unresolved external symbol "int externTestGroupMockDocumentation" (?externTestGroupMockDocumentation@@3HA)
AllTests.obj : error LNK2001: unresolved external symbol "int externTestGroupEventDispatcher" (?externTestGroupEventDispatcher@@3HA)
Debug/AllTests.exe : fatal error LNK1120: 2 unresolved externals
Error executing link.exe.

AllTests.exe - 3 error(s), 0 warning(s)

为什么我会收到这些错误,如何解决?

2 个答案:

答案 0 :(得分:0)

你的AllTests.cpp中有这些行吗?

IMPORT_TEST_GROUP(MockDocumentation)
IMPORT_TEST_GROUP(EventDispatcher)

如果这样做,您还需要在构建中定义这些测试组:

TEST_GROUP(MockDocumentation)
TEST_GROUP(EventDispatcher)

詹姆斯

答案 1 :(得分:0)

想知道你是否克服了这个问题,
虽然我有

,但我面临同样的问题
IMPORT_TEST_GROUP(my_test_group);  
在AllTests.cpp中

并正确定义

TEST_GROUP(my_test_group) {};  
根据Grenning先生的建议,在my_test.cpp中

注意我已经能够通过应用以下解决方法之一来编译它:

1-将包含函数定义的cpp文件添加到UnitTest项目中。或..
2-在头文件中定义函数(如果函数是模板,则典型)

不知道是否有任何建议是正确的(所以还没有提出答案),但是,我在这里提到了我的解决方法,希望其他人可能会觉得有用。< / p>

N.B。我根据“D:\ cpputest-3.6 \ docsWalkThrough_VS21010.docx”配置了Visual Studio 2010的CppUTest-3.6

哈桑