51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 774|回复: 4
打印 上一主题 下一主题

10期关于CPPUNIT 问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2006-5-13 23:02:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我在老师给我们的CPP工程里准备在加一个测试套   等我调试好了以后却出现下面这种情况  我程序里只定义了2个套   问题是难看不说   而且统计也有问题  本来一共是19的用例  现在却显示20 个    老师帮我指点下   程序付后面  谢谢
这是mytest.cpp
#include "stdafx.h"

#include "MyTest.h"
#include "test.h"

// 把这个TestSuite注册到名字为"CounterTest"的工厂中
CPPUNIT_TEST_SUITE_NAMED_REGISTRATION( IsCodeLineTest,"CounterTest" );

CPPUNIT_TEST_SUITE_NAMED_REGISTRATION( MainStatCommLine ,"CounterTest" );

#define RET_OK 0
#define RET_FAIL 1

void IsCodeLineTest::Test1()
{
     //定义输入参数
        int bIsComment;
        CString  szFileLine;

        //定义期望输出
        int iOkReturn;
        int iOkIsComment;

        //定义测试实际输出
        int iResult;
       
        CCounter m_counter;

        //用例输入
        szFileLine = "int a";
        bIsComment = false;

        //期望输出
        iOkReturn = RET_OK;
        iOkIsComment = false;

        //驱动被测函数
        iResult = m_counter.IsCodeLine(szFileLine,bIsComment);

        //结果比较
        CPPUNIT_ASSERT_EQUAL(iOkReturn,iResult);
             CPPUNIT_ASSERT_EQUAL(iOkIsComment,bIsComment);
}

                                                                                                      中间有16个用例我删掉了  太长了

void IsCodeLineTest::Test18()
{
     //定义输入参数
        int bIsComment;
        CString  szFileLine;

        //定义期望输出
        int iOkReturn;
        int iOkIsComment;

        //定义测试实际输出
        int iResult;
       
        CCounter m_counter;

        //用例输入
        szFileLine = "/*a+b+c;";
        bIsComment = false;

                //期望输出
        iOkReturn = RET_FAIL;
        iOkIsComment = true;

        //驱动被测函数
        iResult = m_counter.IsCodeLine(szFileLine,bIsComment);

        //结果比较
        CPPUNIT_ASSERT_EQUAL(iOkReturn,iResult);
        CPPUNIT_ASSERT_EQUAL(iOkIsComment,bIsComment);
}

CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(MainStatCommLine ,"CounterTest" );


void MainStatCommLine ::Test1()
{
     //定义输入参数
        //int  bIsComment;
        CString  szFileLine;


   CString szStatFileName;


        //定义期望输出
       

    int CodeLineNum;

        //定义测试实际输出
        //int iResult;
        CCounter m_counter;

    extern int        g_iCodeLineNum;

        //用例输入
        szFileLine = "e:/text.c";

        //期望输出
       
    CodeLineNum=1;

        //驱动被测函数
          //iResult = m_counter.IsCodeLine(szFileLine,bIsComment);
      m_counter.StatCodeLine(szStatFileName);

        //结果比较
        CPPUNIT_ASSERT_EQUAL(CodeLineNum,g_iCodeLineNum);
}

这个是mytest.h

#include "cppunit/extensions/HelperMacros.h"





class IsCodeLineTest : public CppUnit::TestFixture {

        // 声明一个TestSuite
        CPPUNIT_TEST_SUITE( IsCodeLineTest);
   
        // 添加测试用例到TestSuite, 定义新的测试用例需要在这儿声明一下
        CPPUNIT_TEST( Test1 );
    CPPUNIT_TEST( Test2 );
    CPPUNIT_TEST( Test3 );
    CPPUNIT_TEST( Test4 );
    CPPUNIT_TEST( Test5 );
    CPPUNIT_TEST( Test6 );
    CPPUNIT_TEST( Test7 );
    CPPUNIT_TEST( Test8 );
    CPPUNIT_TEST( Test9 );
    CPPUNIT_TEST( Test10 );
    CPPUNIT_TEST( Test11 );
    CPPUNIT_TEST( Test12 );
    CPPUNIT_TEST( Test13 );
    CPPUNIT_TEST( Test14 );
    CPPUNIT_TEST( Test15 );
        CPPUNIT_TEST( Test16 );
    CPPUNIT_TEST( Test17 );
    CPPUNIT_TEST( Test18 );
   
        // TestSuite声明完成
        CPPUNIT_TEST_SUITE_END();
       

public:
        // 定义测试用例
        void Test1 ();
    void Test2 ();
    void Test3 ();
    void Test4 ();
        void Test5 ();
    void Test6 ();
    void Test7 ();
    void Test8 ();
        void Test9 ();
    void Test10 ();
    void Test11 ();
    void Test12 ();
    void Test13 ();
    void Test14 ();
    void Test15 ();
    void Test16 ();
    void Test17 ();
    void Test18 ();
    void Test19 ();
   
  };

      class MainStatCommLine : public CppUnit::TestFixture {

           // 声明一个TestSuite
           CPPUNIT_TEST_SUITE(MainStatCommLine);
   
            // 添加测试用例到TestSuite, 定义新的测试用例需要在这儿声明一下

            CPPUNIT_TEST( Test1 );
   
           // TestSuite声明完成
            CPPUNIT_TEST_SUITE_END();
       

public:
           // 定义测试用例
           void Test1 ();
      
  };


Sample Text
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2006-5-13 23:09:32 | 只看该作者

相关图片

相关图片

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2006-5-13 23:25:23 | 只看该作者

不好意思 我找到了

自己太粗心了
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2006-5-20 21:25:05 | 只看该作者
也是自己问自己答啊??
不象
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2006-5-20 21:46:43 | 只看该作者

回答应广大同学的要求 我把错的地方给指出来

// 把这个TestSuite注册到名字为"CounterTest"的工厂中
CPPUNIT_TEST_SUITE_NAMED_REGISTRATION( IsCodeLineTest,"CounterTest" );


下面这局在这里定义了   在下面有定义了一次
CPPUNIT_TEST_SUITE_NAMED_REGISTRATION( MainStatCommLine ,"CounterTest" )


在这个地方


CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(MainStatCommLine ,"CounterTest" );


void MainStatCommLine ::Test1()
{
     //定义输入参数
        //int  bIsComment;
        CString  szFileLine;


   CString szStatFileName;
。。。。。。




所以说我比较粗心 大家  也要多努力   多试试   不要在出我这种问题了
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-19 03:33 , Processed in 0.069690 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表