С++ Unit Test в Visual Studio 2012

Я работаю с Microsoft Visual Studio 2012 Ultimate для написания приложений на С++. Я получил эту версию из моего доступа к MSDNAA. Моя проблема в том, что я хочу создать модульные тесты для классов С++, которые я написал.

Обратите внимание: Он стандартно соответствует С++, ничего смешанного, не С#, это просто С++, который также можно скомпилировать с помощью g++.

В файле → new → project → Visual С++ существует нечто вроде "управляемого тестового проекта":

Однако, когда я создаю такой проект, я не могу управлять им, чтобы добавить ссылки, например. на "MyClass.h" и скомпилировать. И я не могу найти простой учебник для этого.

Может ли кто-нибудь помочь мне, указав, как настроить простой С++ Unit Test с Visual Studio 2012?

Ответ 1

У вас есть два варианта для модульных тестов С++ Управление тестовым проектом и Нативный Unit Test Проект. Вы должны выбрать собственный, а затем просто добавить нужные вам вложения и написать тесты.

Вот фиктивный пример, где я включаю заголовок "foo.h", создаю экземпляр foo и вызываем один из его методов.

#include "stdafx.h"

#include "..\foo.h" // <- my header

#include "CppUnitTest.h"
using namespace Microsoft::VisualStudio::CppUnitTestFramework;

namespace UnitTest1
{       
    TEST_CLASS(UnitTest1)
    {
    public:

        TEST_METHOD(TestMethod1)
        {
            foo f;
            Assert::AreEqual(f.run(), true);
        }
    };
}

Подробнее см. Тестирование существующих приложений на С++ с помощью Test Explorer.