51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2966|回复: 1
打印 上一主题 下一主题

[讨论] 有关cppunit测试用例编写!急急.....

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-4-21 10:16:16 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
sdlkfj9 各位好,我是一个测试新手,是用cppunit作一个简单函数的测试,这个是struct
{
   int num;/*格子当前处于什么状态,1有雷,0已经显示过数字或者空白格子*/
   int roundnum;/*统计格子周围有多少雷*/
   int flag;/*右键按下显示红旗的标志,0没有红旗标志,1有红旗标志*/
}Mine[10][10];
int MineStatistics(int i,int j)/*统计每个格子周围的雷数*/
{
   int nNUM=0;
   if(i==0&&j==0)/*左上角格子的统计*/
   {
      if(Mine[0][1].num==1)
  nNUM++;
      if(Mine[1][0].num==1)
  nNUM++;
      if(Mine[1][1].num==1)
  nNUM++;
   }
   else
      if(i==0&&j==9)/*右上角格子的统计*/
      {
  if(Mine[0][8].num==1)
     nNUM++;
  if(Mine[1][9].num==1)
     nNUM++;
  if(Mine[1][8].num==1)
     nNUM++;
      }
     else
  if(i==9&&j==0)/*左下角格子的统计*/
  {
     if(Mine[8][0].num==1)
        nNUM++;
     if(Mine[9][1].num==1)
        nNUM++;
     if(Mine[8][1].num==1)
        nNUM++;
  }
else
     if(i==9&&j==9)/*右下角格子的统计*/
     {
        if(Mine[9][8].num==1)
    nNUM++;
        if(Mine[8][9].num==1)
    nNUM++;
        if(Mine[8][8].num==1)
    nNUM++;
     }
     else if(j==0)/*左边第一列格子的统计*/
     {
        if(Mine[j+1].num==1)
    nNUM++;
        if(Mine[i+1][j].num==1)
    nNUM++;
        if(Mine[i-1][j].num==1)
    nNUM++;
        if(Mine[i-1][j+1].num==1)
    nNUM++;
        if(Mine[i+1][j+1].num==1)
    nNUM++;
     }
     else if(j==9)/*右边第一列格子的统计*/
     {
        if(Mine[j-1].num==1)
    nNUM++;
        if(Mine[i+1][j].num==1)
    nNUM++;
        if(Mine[i-1][j].num==1)
    nNUM++;
        if(Mine[i-1][j-1].num==1)
    nNUM++;
        if(Mine[i+1][j-1].num==1)
    nNUM++;
     }
     else if(i==0)/*第一行格子的统计*/
     {
        if(Mine[i+1][j].num==1)
    nNUM++;
        if(Mine[j-1].num==1)
    nNUM++;
        if(Mine[j+1].num==1)
    nNUM++;
        if(Mine[i+1][j-1].num==1)
    nNUM++;
        if(Mine[i+1][j+1].num==1)
    nNUM++;
      }
      else if(i==9)/*最后一行格子的统计*/
      {
        if(Mine[i-1][j].num==1)
    nNUM++;
        if(Mine[j-1].num==1)
    nNUM++;
        if(Mine[j+1].num==1)
    nNUM++;
        if(Mine[i-1][j-1].num==1)
    nNUM++;
        if(Mine[i-1][j+1].num==1)
    nNUM++;
     }
     else/*普通格子的统计*/
     {
        if(Mine[i-1][j].num==1)
    nNUM++;
        if(Mine[i-1][j+1].num==1)
    nNUM++;
        if(Mine[j+1].num==1)
    nNUM++;
        if(Mine[i+1][j+1].num==1)
    nNUM++;
        if(Mine[i+1][j].num==1)
    nNUM++;
        if(Mine[i+1][j-1].num==1)
    nNUM++;
        if(Mine[j-1].num==1)
    nNUM++;
        if(Mine[i-1][j-1].num==1)
    nNUM++;
      }
   return(nNUM);/*把格子周围一共有多少雷数的统计结果返回*/
};
很简单 我为这个函数设计了测试用例,叫void testMineStatistics();我为这个函数设计输入然后运行我的测试,但我不论怎么赋值,在我的执行程序中只显示一个测试用例,这是为什么呀.我的初衷是,对于这个函数赋不同的值,将得到不同的测试用例,但我不论怎么试都只能得到一个测试用例.
谁来帮我分析一下原因和解决办法,本人将不胜感激.
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2007-4-24 15:08:58 | 只看该作者
跟进去看一下,这是程序调试
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-11 10:35 , Processed in 0.067695 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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