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��� ���������, ������������ ��������� ��������� ��������� ��������� 곧 ������ ������������. ��� ������ ������������ ��������� ���������.
Unmanaged C++������ ����� ��������� ��������� Unmanaged C++ Project ���개��� ������������, ������������ ��������������� assert ��� ��������� ������������ Test Framework ��� ������������ ������������ ���������������.
--NeoCoin
--NeoCoin
���.. gc��� ������ ������ ��������������� 곳��������� ��� ����� ���겠������. 그������ ������������ �����������? ������ ������������������ ������������ ������������ __gc��� ���������������? ��������� ��������������� __gc��� ��������� 겁������. ������ Managed C++ Extensions��� ��������� ������ ������겠���.(gc���고) ������������ ��� ������ ������게 ���거 ��기��� ������... --������
��������� Managed C++��� 깊��� 공������ ������ ���������, ��� ������겠���. �������� __gc��� ��������� ��������� ������ ������������ �������������� ������.
그����� ���������, MFC��� ��������� ������������ ������ ����� ������ ������ ���������, MFC ��� ��������� ������그������ ������ ���������������, ������������ ������ ��������� ���������, MFC Frameworks ��� Managed C++ ��������� ������������ ������고, ��� ��������������, �������� ������������. ���������, MS������ ������ MFC class������ __gc�� ������기������ ���걸까? ������ ������ ������ ����������� ������������ ������까?
그������ MFC ��������� ����� ��������� ��������� ��������� ��������� ������������ ������ ������ ����� ������까 ���각������. 길��� ���������
--NeoCoin
.png)
--NeoCoin