亚洲好骚综合-亚洲黄色录像-亚洲黄色网址-亚洲黄色网址大全-99久久99久久-99久久99久久精品国产

您的位置:軟件測試 > 開源軟件測試 > 開源單元測試工具 >
用cpp做C單元測試
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2013/2/19 16:17:19 ] 推薦標(biāo)簽:

  現(xiàn)在, 什么編碼方式并不重要, 因?yàn)橹匾率俏覀儽仨毧隙ㄋ仨氉觯?是這個(gè)類應(yīng)該做: 正確地裝載和存放數(shù)據(jù)到文件。

  為了做這個(gè)驗(yàn)證,我們?nèi)?chuàng)造一個(gè)新的測試集,包括二個(gè)測試用例: 一個(gè)裝載數(shù)據(jù)和另為存儲數(shù)據(jù)。

使用 CPPUnit

  你能在這里http://cppunit.sourceforge.net/得到新的CPPUnit 版本, 你能發(fā)現(xiàn)所有的庫 , 文獻(xiàn), 例子和其它有趣的材料。(我下載了版本為1.8.0 并且這個(gè)頒布工作良好)

  在Win32里, 你能在VC++ 之下(6.0 和以后版本)使用CPPUnit , 但是當(dāng)CPPUnit 使用ANSI C++, 有少量接口時(shí)針對其它環(huán)境象C++Builder。

  在CPPUnit發(fā)布版本里面,所有建造庫的步驟和信息,可以在INSTALL-WIN32.txt文件找到,。當(dāng)所有二進(jìn)制文件被構(gòu)建之后, 你能寫你自己的測試集了。

  想在VC中寫自己的測試程序,可以按照以下步驟:

  建立一個(gè)MFC的對話框(或文檔視圖結(jié)構(gòu))
  允許時(shí)間類型信息,Alt+F7 --> C/C++ --> C++ language --> Enable RTTI
  把Cppunitinlude放到include目錄:Tools - Options - Directories - Include.
  用cppunitd.lib (靜態(tài)連接) 或者cppunitd_dll.lib (動(dòng)態(tài)鏈接),testrunnerd.lib來鏈接你的程序。
  如果動(dòng)態(tài)鏈接,要把testrunnerd.dll 拷到應(yīng)用程序目錄來運(yùn)行。

  Ok,看一下測試用例的類的定義吧。

#if !defined(DISKDATA_TESTCASE_H_INCLUDED)
#define DISKDATA_TESTCASE_H_INCLUDED

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include <cppunit/TestCase.h>
#include <cppunit/extensions/HelperMacros.h>

#include "DiskData.h"

class DiskDataTestCase : public CppUnit::TestCase
{
CPPUNIT_TEST_SUITE(DiskDataTestCase);
CPPUNIT_TEST(loadTest);
CPPUNIT_TEST(storeTest);
CPPUNIT_TEST_SUITE_END();

public:
void setUp();
void tearDown();

protected:
void loadTest();
void storeTest();

private:
DiskData *fixture;
};

#endif

  首先, 必須包含TestCase.h和HelperMacros.h. 第一步,我們的從我們的Testcase基類配生的新類。第二,用一些宏使我們的定義的更方便,如 CPPUNIT_TEST_SUITE (開始測試定義), CPPUNIT_TEST (定義一個(gè)測試用例) 或 CPPUNIT_TEST_SUITE_END (結(jié)束一個(gè)測試集).

  我們的類(DiskDataTestCase)有重載了兩個(gè)方法setUp()和tearDown(). 一個(gè)開始,一個(gè)結(jié)束測試。

  測試過程如下

啟動(dòng)程序
點(diǎn)擊“Run”
調(diào)用Call setUp()方法: 構(gòu)建我們的測試對象fixture
調(diào)用第一個(gè)測試方法
調(diào)用tearDown() 方法,清除對象
調(diào)用Call setUp()方法: 構(gòu)建我們的測試對象fixture
調(diào)用第一個(gè)測試方法
調(diào)用Call setUp()方法: 構(gòu)建我們的測試對象fixture
...
像下面的形式:

#include "DiskDataTestCase.h"

CPPUNIT_TEST_SUITE_REGISTRATION(DiskDataTestCase);


void DiskDataTestCase::setUp()
{
fixture = new DiskData();
}

void DiskDataTestCase::tearDown()
{
delete fixture;
fixture = NULL;
}


void DiskDataTestCase::loadTest()
{
// our load test logic
}


void DiskDataTestCase::storeTest()
{
// our store test logic
}

上一頁123下一頁
軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 国产成人综合在线 | 欧美日韩一区二区三区高清不卡 | 麻豆国产精品高中生视频 | 国产精品国内免费一区二区三区 | 午夜伦理在线观看 | 国产好片无限资源 | 欧美乱操| 国产成人精品一区 | 午夜影院入口 | 黄网站色在线视频免费观看 | 国产在线视频你懂的 | 免费午夜影片在线观看影院 | 国产在线精品成人一区二区三区 | 亚洲www美色 | 欧美日本综合一区二区三区 | 国产视频中文字幕 | 日本视频www色变态 日本爽p大片免费观看 | 欧美 在线 成 人怡红院 | h网站在线播放 | 欧美高大肥妇hdxxxx | 夜夜骑日日| 日本高清乱偷www | 动漫美女胸被狂揉扒开吃奶动态图 | 黄色片在线观看免费 | 欧美日韩在线吹潮视频 | 玖玖在线免费视频 | 国产一精品一av一免费爽爽 | 日日干日日插 | 国产日产欧产美一二三区 | 特级a毛片 | 男人香蕉好大好爽视频 | 最新亚洲情黄在线网站无广告 | 日本午夜小视频 | 日韩视频在线精品视频免费观看 | 野花的视频在线观看免费高清 | 1717she永久精品免费 | 亚洲第一页在线视频 | 青青成人福利国产在线视频 | 久久久久88色偷偷免费 | 刺激花蒂抽搐视频在线看 | 欧美高清视频性播放 |