CPPUNIT 다운로드 : http://cppunit.sourceforge.net
cppunit 1.10.2 기준
### 프로젝트 설정
MFC Dialog Based 프로젝트 생성
1. C/C++ / 일반 / 추가포함 디렉토리
"$(NLELIB)\cppunit\cppunit-1.10.2\include";"$(NLELIB)\cppunit\cppunit-1.10.2\src"
잘 보자. 2개다.
2. C/C++ / 코드 생성 / 런타임 라이브러리 :
다중 스레드 디버그 DLL(Multi-threaded Debug DLL) (/MDd)
3. C/C++ / 언어 / 런타임 형식 정보사용 : 예
4. 링커 / 일반 / 추가 라이브러리 디렉터리 : $(NLELIB)\cppunit\cppunit-1.10.2\lib
5. 링커 / 입력 / 추가 종속성 : cppunitd_dll.lib testrunnerd.lib
6. testrunnerd.dll 파일과 cppunitd_dll.dll 파일을 내 debug 폴더로 복사
### 소스코드 수정
1. APP 파일에서 다음과 같이 한다.
#include "msvc6/testrunner/testrunner.h"
#include "cppunit/extensions/testfactoryregistry.h"
BOOL CUnitTestApp::InitInstance()
{
TestRunner runner;
runner.addTest(CppUnit::TestFactoryRegistry::getRegistry().makeTest());
runner.run();
return FALSE;
....
알지 이렇게 하면 그냥 TestRunner만 실행되고 정작 MFC Dialog는 나타나지 않는다.
2. TestCase.h 파일을 만들어 다음과 같이 적는다.
#pragma once
#ifndef _TESTCASE_H_
#define _TESTCASE_H_
#include "cppunit/TestCase.h"
#include "cppunit/extensions/HelperMacros.h"
class TestCaseExample : public CppUnit::TestCase
{
CPPUNIT_TEST_SUITE(TestCaseExample);
CPPUNIT_TEST(Test);
CPPUNIT_TEST_SUITE_END();
public:
void setUp();
void tearDown();
void Test();
};
#endif
3. TestCase.cpp 파일을 만들어서 다음과 같이 적는다.
#include "StdAfx.h"
#include "testcase.h"
CPPUNIT_TEST_SUITE_REGISTRATION(TestCaseExample);
void TestCaseExample::setUp()
{
}
void TestCaseExample::tearDown()
{
}
void TestCaseExample::Test()
{
CPPUNIT_ASSERT_EQUAL(10, 10);
}
이렇게 하면 끝.
테스트 후 메모리릭이 발생하는데 늘 생기는 것 같다.
48, 20, 44, 48 바이트의 메모리릭이 발생할거다.
다운로드 :
'프로그래밍 > VC++' 카테고리의 다른 글
XML에서 사용하는 예약어 못쓰게 막기 (0) | 2007.11.23 |
---|---|
버튼 동적 생성과 이벤트 연결 (0) | 2007.11.22 |
CFile 클래스를 이용해 파일크기 가져오기 (0) | 2007.10.28 |
프로세스 실행시키고 종료될때까지 기다리기. (0) | 2007.09.22 |
다른 Application으로 Drag & Drop. MFC 클래스를 이용해서. (0) | 2007.08.29 |