2011-09-22 62 views
1

我試圖使用Visual Assert進行測試。 Visual Studio說我要測試的方法在main.cpp中定義,在測試夾具中是未定義的。視覺斷言的範圍問題

MyFunctionTest.cpp:

#include <cfixcc.h> 

class ExampleTest : public cfixcc::TestFixture 
{ 
private: 

public: 
    void Test() 
    { 
     CFIXCC_ASSERT_EQUALS(4, MyFunction(2,2)); 
    } 
}; 

CFIXCC_BEGIN_CLASS(ExampleTest) 
    CFIXCC_METHOD(Test) 
CFIXCC_END_CLASS() 

我沒有爲測試一個單獨的項目,所以這兩個文件是相同的項目的一部分。我如何讓MyFunction可見,以便Visual Assert正常工作?

+0

頭哪裏是'MyFunctiony'定義? – RedX

+0

MyFunction在main.cpp中定義。對不起,如果不明確。 如果超出我的控制範圍的非技術性情況決定我不允許將定義移動到頭文件,我可以包含cpp文件嗎? – CRES

+0

你不需要將它移動到頭部就可以在那裏聲明它。您可以在main.cpp中保留定義。 – RedX

回答

0

#include,聲明MyFunction()