2013-02-19 2 views
0

Я пытаюсь использовать MSTest, чтобы выполнять модульные тесты для собственного кода на C++ (чтобы попытаться реализовать Test Driven Development).MSTest с C++: методы тестирования не выполняются

В Мастер создания C++ «Добавить новый проект» есть запись MSTest. Он явно создает код в C+++/CLI.

Однако, когда я пытаюсь запустить эти тесты, Visual Studio показывает мне, что тесты не работоспособные:

Not Runnable TestMethod2 CargoOCRTests UTA007: Method TestMethod2 defined in class CargoOCRTests.UnitTest1 does not have correct signature. Test method marked with the [TestMethod] attribute must be non-static, public, does not return a value and should not take any parameter. for example: public void Test.Class1.Test(). 

Однако я думаю, что мои два испытания функция не уважает прототип VS жалуется:

namespace CargoOCRTests 
{ 
    [TestClass] 
    public ref class UnitTest1 
    { 
     [TestMethod] 
     void TestMethod1() 
     { 
      Assert::IsTrue(true); 
     }; 

     [TestMethod] 
     void TestMethod2() 
     { 
      Assert::IsTrue(false); 
     }; 
    }; 
} 

Вы знаете, в чем причина?

ответ

2

Вы должны пометить методы испытаний, как public

public: 
    [TestMethod] 
    void TestMethod1() {} 
+0

о ... Стыдно ... –

Смежные вопросы