1. 행 (Using C++) ¶
- 트 Managed C++ 클 .
- Test Fixture 클 TestFixture, 테트 함 Test Attribute .
- 페 C/C++ , #using 확 NUnit 폴 bin 폴 .
- 파 dll 파 .
- NUnit 폴 bin NUnit-gui.exe 행한. 파해 dll 해 run하 테트 행해.
- , 테트 할 .. .
// NUnit6.h
#pragma once
#using <nunit.framework.dll>
using namespace System;
using namespace NUnit::Framework;
namespace NUnitSamples
{
[TestFixture]
public __gc class Calculator
{
int a, b;
public:
[SetUp] void Init();
[Test] void Add();
[Test] void Sub();
[Test] void Mul();
[Test] void Div();
};
}
// NUnit6.cpp
#include "stdafx.h"
#include "NUnit6.h"
namespace NUnitSamples {
void Calculator::Init() {
a = 5;
b = 7;
}
void Calculator::Add() {
Assertion::AssertEquals(12, a+b);
}
void Calculator::Sub() {
Assertion::AssertEquals(-2, a-b);
}
void Calculator::Mul() {
Assertion::AssertEquals(35, a*b);
}
void Calculator::Div() {
Assertion::AssertEquals(1.4, a/b);
}
}
2. ¶
- 헤 해 . 하 cpp파 하. Test .
- namespace .
-
// NUnit6.h
#pragma once
#using <nunit.framework.dll>
using namespace System;
using namespace NUnit::Framework;
[TestFixture]
public __gc class Calculator
{
int a, b;
public:
[SetUp]
void Calculator::Init() {
a = 5;
b = 7;
}
[Test]
void Calculator::Add() {
Assertion::AssertEquals(12, a+b);
}
[Test]
void Calculator::Sub() {
Assertion::AssertEquals(-2, a-b);
}
[Test]
void Calculator::Mul() {
Assertion::AssertEquals(35, a*b);
}
[Test]
void Calculator::Div() {
Assertion::AssertEquals(1.4, a/b);
}
};
// NUnit6.cpp #include "stdafx.h" #include "NUnit6.h"
3. MFC 하 ¶
VC++ 7.0 MFC NUnit . 한... 했.
- MFC 트 . 트 하.
- Managed C++ Library 트 한. 테트트 하.
- 테트 트 #using nunit\bin폴 .
- 테트 트 포함 토 트 폴 .
- 트 탭 Managed C++ Extension 크해.
트 클 테트 트 테트하 . 해할? 한 #include <domain.h> 하, 테트 클 .h .cpp . 했. 하 ... 클 .
#pragma once
class CDomain
{
public:
CDomain(void);
~CDomain(void);
int add(int a, int b);
int mult(int a, int b);
};
평 하 하 . 하 트 Managed C++ Extensions. C++ 해 .Net Platform 하 하 Microsoft C++ 확한 형태 해 . 해 NUnit C++ 할 . NUnit 할 클 하 해 클 __gc 해 한.
#pragma once
public __gc class CDomain
{
public:
CDomain(void);
~CDomain(void);
int add(int a, int b);
int mult(int a, int b);
};
__gc 하 항 해 __gc 하. NUnit 테트 클 포형 할 . 테트 클 .
// TestCase.h
#pragma once
#using <nunit.framework.dll>
using namespace System;
using namespace NUnit::Framework;
#include "Domain.h" // 포함 토 트 폴
namespace TestCase
{
[TestFixture]
public __gc class Class1
{
private:
CDomain* m_pD; // Only Pointer
public:
[SetUp]
void init() {
m_pD = new CDomain; // delete .
}
[Test]
void testAdd() {
Assertion::AssertEquals(7, m_pD->add(3,4));
}
[Test]
void testMult() {
Assertion::AssertEquals(12, m_pD->mult(3,4));
}
};
}
해 . 했. ... NUnit 해 . 하 . Unmanaged C++ 해 할 . , MFC , .Net Platform 할 . ( __gc 하)
NUnit Unmanged C++ 하 하 했. Managed C++트 Unmanged C++ 트 Managed C++ NUnit 해 Unmanaged C++ 해 테트 했. 하, .Net Platform , Managed C++ Extension 해, 트 해 . 할 .
Managed C++ 히 해 , . __gc 하 확할 .
, MFC 테트 하 , MFC 한 하, 테트 할 하, MFC Frameworks Managed C++ 파 , , . , MS MFC class __gc 한? 해 크 하 ?










