四、使用方法
CppUnit小的測試單位是TestCase,多個相關(guān)TestCase組成一個TestSuite。要添加測試代碼簡單的方法是利用CppUnit為我們提供的幾個宏來進行(當(dāng)然還有其他的手工加入方法,但均是殊途同歸,大家可以查閱CppUnit頭文件中的演示代碼)。這幾個宏是:
CPPUNIT_TEST_SUITE() 開始創(chuàng)建一個TestSuite
CPPUNIT_TEST() 添加TestCase
CPPUNIT_TEST_SUITE_END() 結(jié)束創(chuàng)建TestSuite
CPPUNIT_TEST_SUITE_NAMED_REGISTRATION() 添加一個TestSuite到一個指定的TestFactoryRegistry工廠 。(兩個參數(shù):第一個是TestSuite;第二個是標(biāo)識TestSuite名稱字符串)
CppUnit::MfcUi::TestRunner runner;// MFC的GUI測試控制平臺
CppUnit::TestFactoryRegistry ®istry = CppUnit::TestFactoryRegistry::getRegistry(TestSuite名稱);//得到標(biāo)識TestSuite名稱字符串TestFactoryRegistry
runner.addTest(registry.makeTest());//添加Test
runner.run();//運行測試案例
//實例:一個實現(xiàn)兩個整數(shù)加減乘除運算的類測試
// Arithmetic.h 加減乘除運算類
#pragma once
class CArithmetic
{
public:
CArithmetic(void);
~CArithmetic(void);
public:
int Add(int nNum1, int nNum2);
int Sub(int nNum1,int nNum2);
int Mul(int nNum1,int nNum2);
double Div(int nNum1,int nNum2);
};
// Arithmetic.cpp
#include " Arithmetic.h"
CArithmetic::CArithmetic(void)
{
}
CArithmetic::~CArithmetic(void)
{
}
int CArithmetic::Add(int nNum1, int nNum2)
{
return nNum1+nNum2;
}
int CArithmetic::Sub(int nNum1,int nNum2)
{
return nNum1-nNum2;
}
int CArithmetic::Mul(int nNum1,int nNum2)
{
return nNum1*nNum2;
}
double CArithmetic::Div(int nNum1,int nNum2)
{
return nNum1/(nNum2*1.0);
}