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 기 걸까? 까?










