Anonymous
Anonymous

Reputation: 4757

C++ Unit Test in Visual Studio 2012

I am working with Microsoft Visual Studio 2012 Ultimate to write C++ applications. I got that version from my MSDNAA access. My Problem is that I want to create unit tests for the C++ classes I wrote.

Please Note: It's standard conform C++, nothing mixed, no C#, it's just C++ that can also be compiled with the g++.

Under file -> new -> project -> Visual C++ exists something like a "managed testproject":

However when I create such a project I cannot manage it to add references e.g. to "MyClass.h" and to compile. And I cannot find a simple tutorial for that.

Can anyone help me by showing how to set up a simple C++ Unit Test with Visual Studio 2012?

Upvotes: 10

Views: 14540

Answers (1)

Marius Bancila
Marius Bancila

Reputation: 16318

You have two choices for C++ unit tests Manage Test Project and Native Unit Test Project. You should select the native one, and then just add the includes you want and write the tests.

Here is a dummy example where I include a "foo.h" header, instantiate a foo and call one of its methods.

#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);
        }
    };
}

See Unit testing existing C++ applications with Test Explorer for more.

Upvotes: 16

Related Questions