CExampleTest.cpp
/******************************************************************************
Copyright (C), 2001-2011, Huawei Tech. Co., Ltd.
******************************************************************************
File Name :
Version :
Author :
Created : 2010/9/1
Last Modified :
Description :
Function List :
History :
1.Date : 2010/9/1
Author :
Modification: Created file
******************************************************************************/
#include <cppunit/config/SourcePrefix.h>
#include "CExampleTest.h"
#include "BufferManagement.h"
// 注册测试套到CppUnit
CPPUNIT_TEST_SUITE_REGISTRATION( CExampleTest );
// 测试用例实现示例
// SetUp: 在每个用例前执行一次
void CExampleTest::setUp()
{
}
// tearDown: 在每个用例后执行一次
void CExampleTest::tearDown()
{
}
void CExampleTest::TestCase01()
{
CreateBuffer(2,RELEASE_ELEMENT_USED_EARLY);
SetElement(1,2);
SetElement(2,3);
SetElement(1,7);
int rlt;
rlt = SetElement(3,8);
CPPUNIT_ASSERT(0 == rlt);
int value;
rlt = GetElement(2, &value);
CPPUNIT_ASSERT(-1 == rlt);
DestroyBuffer();
}
// 在这里添加测试用例实现
// void CExampleTest::TestCasexx()
// {
//
// }
CExampleTest.h
/******************************************************************************
Copyright (C), 2001-2011, Huawei Tech. Co., Ltd.
******************************************************************************
File Name :
Version :
Author :
Created : 2010/9/1
Last Modified :
Description :
Function List :
History :
1.Date : 2010/9/1
Author :
Modification: Created file
******************************************************************************/
#ifndef _CEXAMPLE_TEST_H
#define _CEXAMPLE_TEST_H
#include <cppunit/extensions/HelperMacros.h>
class CExampleTest : public CPPUNIT_NS::TestFixture
{
CPPUNIT_TEST_SUITE( CExampleTest );
CPPUNIT_TEST( TestCase01 );
// 在这里添加测试用例声明, 将测试用例加入测试套
// CPPUNIT_TEST( TestCasexx );
CPPUNIT_TEST_SUITE_END();
public:
void setUp();
void tearDown();
void TestCase01();
// 在这里添加测试用例声明, 声明测试类的成员函数
// void TestCasexx();
};
#endif /*_CEXAMPLE_TEST_H*/
main.cpp
******************************************************************************/
#include <cppunit/TextOutputter.h>
#include <cppunit/XmlOutputter.h>
#include <cppunit/BriefTestProgressListener.h>
#include <cppunit/extensions/TestFactoryRegistry.h>
#include <cppunit/TestResult.h>
#include <cppunit/TestResultCollector.h>
#include <cppunit/TestRunner.h>
int main(int argc, char* argv[])
{
// Create the event manager and test controller
CPPUNIT_NS::TestResult controller;
// Add a listener that colllects test result
CPPUNIT_NS::TestResultCollector result;
controller.addListener( &result );
// Add a listener that print dots as test run.
CPPUNIT_NS::BriefTestProgressListener progress;
controller.addListener( &progress );
// Add the top suite to the test runner
CPPUNIT_NS::TestRunner runner;
runner.addTest( CPPUNIT_NS::TestFactoryRegistry::getRegistry("All Tests").makeTest() );
runner.run( controller );
// Print test in a text format.
CPPUNIT_NS::TextOutputter outputter( &result, CPPUNIT_NS::stdCOut() );
outputter.write();
// This for XML output
std::ofstream file( "TestResult.xml" );
CPPUNIT_NS::XmlOutputter xml( &result, file );
xml.setStyleSheet( "report.xsl" );
xml.write();
file.close();
return result.wasSuccessful() ? 0 : 1;
}