编写CppUnit测试用例
作者:网络转载 发布时间:[ 2013/10/12 17:12:05 ] 推荐标签:
3、基于GUI的含宏的MFC的测试方式
建一个基于对话框的应用程序。
Step1: 首先需要建造窗口,在InitInstance()中注释掉如下代码:
|
/* CdialogCppUnitDlgdlg;
m_pMainWnd =&dlg;
INT_PTRnResponse = dlg.DoModal();
if (nResponse== IDOK)
{
// TODO: 在此放置处理何时用
// “确定”来关闭对话框的代码
}
else if (nResponse== IDCANCEL)
{
// TODO: 在此放置处理何时用
// “取消”来关闭对话框的代码
}
*/
|
编写自己的对话框:
|
CppUnit::MfcUi::TestRunner runner;
runner.addTest(PlusTest::suite());//添加测试
runner.run();//showui
|
Step2:编写测试用例,代码如下:
|
PlusTestCase.h
#pragma once
#include "cppunit/TestCase.h"
#include "cppunit/extensions/HelperMacros.h"
class CPlusTestCase :public CppUnit::TestCase
{
//声明一个TestSuite
CPPUNIT_TEST_SUITE(CPlusTestCase);
//添加测试用例到TestSuite,定义新的测试用例需要在这里声明一下
//CPPUNIT_TEST(testSort);
CPPUNIT_TEST(testAdd);
//TestSuite声明完成
CPPUNIT_TEST_SUITE_END();
public:
CPlusTestCase(void);
~CPlusTestCase(void);
voidtestAdd();//测试方法
//voidtestSort();//测试排序方法
void setUp();
voidtearDown();
};
PlusTestCase.cpp
#include "StdAfx.h"
#include "PlusTestCase.h"
#include "../dllMfcDlg/CPlus.h" //20130327
//#include "../intSort/CCSort.h" //20130327
#pragma comment (lib, "cppunitd_dll.lib")
#pragma comment(lib,"E:\workStudyDocu\CppUnit\2008cppunit-lib-dll_32\testrunnerud.lib")
#pragma comment (lib,"E:\workStudyDocu\CppUnit\2008cppunit-lib-dll_32\cppunitd.lib")
//#pragma comment(lib,"E:\workStudyDocu\CppUnit\2008cppunit-lib-dll_32\testrunnerd.lib")
CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(CPlusTestCase,"plus");//注册一个名为plus的TestSuite
//CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(CPlusTestCase,"sort");
CPlusTestCase::CPlusTestCase(void)
{
}
CPlusTestCase::~CPlusTestCase(void)
{
}
void CPlusTestCase::testAdd()
{
CCPlusplus;//被测对象的类
int nret =plus.Add(10,20);
CPPUNIT_ASSERT_EQUAL(30,nret);
}
void CPlusTestCase::setUp()
{
}
void CPlusTestCase::tearDown()
{
}
|
本文内容不用于商业目的,如涉及知识产权问题,请权利人联系SPASVO小编(021-61079698-8054),我们将立即处理,马上删除。

sales@spasvo.com