10

Microsoft Visual Studio 2012 Ultimate を使用して C++ アプリケーションを作成しています。MSDNAA アクセスからそのバージョンを取得しました。私の問題は、私が書いた C++ クラスの単体テストを作成したいということです。

注意: これは標準準拠の C++ であり、混合も C# もありません。g++ でコンパイルできるのは C++ のみです。

ファイル -> 新規 -> プロジェクト -> Visual C++の下に、「マネージド テスト プロジェクト」のようなものが存在します。

ただし、そのようなプロジェクトを作成すると、「MyClass.h」などへの参照を追加してコンパイルすることはできません。そして、そのための簡単なチュートリアルが見つかりません。

Visual Studio 2012 で簡単な C++ 単体テストをセットアップする方法を教えてくれる人はいますか?

4

1 に答える 1

16

C++ ユニット テストには、 Manage Test ProjectNative Unit Test Projectの 2 つの選択肢があります。ネイティブのものを選択してから、必要なインクルードを追加してテストを記述してください。

fooこれは、「foo.h」ヘッダーをインクルードし、a をインスタンス化し、そのメソッドの 1 つを呼び出すダミーの例です。

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

詳細については、「テスト エクスプローラーを使用した既存の C++ アプリケーションの単体テスト」を参照してください。

于 2013-02-01T14:11:44.000 に答える