51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3072|回复: 13
打印 上一主题 下一主题

[讨论] 做题了!做题了!

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2005-12-17 17:37:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
找出错误原因并写出正确答案:
                     设置软件日期限制源代码错误
                           {
                                 //给用户的软件设置使用日期的限制
                                 //2003年6月23日以后,弹出软件过期的错误不能用的信息
                                CTime.time=CTime::GetCurrentTime( );
                                 if( time.GetYear( )>=2003 )
                                     { if ( time.GetMonth( )>6)
                                        show.outofdate_message_and_exit( );
                                        if ( time.GetDay( )>27)
                                         show.outofdate_message_and_exit( );
                                       }
                             }
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2005-12-17 23:00:39 | 只看该作者
有意思吗?调整日期又可以用了……
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2005-12-18 00:56:05 | 只看该作者
照你这么说,那我在这里问这个有什么意思?我只是要知道程序错在哪儿,怎么改!!
请不要回没用的话!!!
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2005-12-18 14:33:56 | 只看该作者
最起码有一点上面需求的时间和你下面代码的时间就不一致啊,上面的时间是23号,下面的代码又是27号;而且,年份判断完了之后,月份和日期的判断也是该有个分界的吧,只有月份大于6的时候才判断日期吧。你的月份和日期的判断好像成了两选一了吧。

[ 本帖最后由 biaofengzgf 于 2005-12-18 14:39 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2005-12-18 23:21:32 | 只看该作者
不好意思,谢谢biaofengzgf的提醒,抱歉是我输入错误,它要判断的是2003年6月23号以后的日期为过期日期.
这是一家公司招聘软件测试员时出的笔试题,他们的目的就是要应聘者描述出这道题错误的原因,它的错误大家可能很容易看出来,可是要怎样用最精确的语言来描述这个错误呢?希望大家来讨论讨论
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2005-12-19 10:17:27 | 只看该作者
首先告诉楼主一句话,说话客气一点,不管人家给你的答案是不是你想要的,都不能出言不逊!
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2005-12-19 15:10:44 | 只看该作者
虚心接受版主的批评.
回复 支持 反对

使用道具 举报

  • TA的每日心情
    奋斗
    2018-2-28 18:04
  • 签到天数: 40 天

    连续签到: 1 天

    [LV.5]测试团长

    8#
    发表于 2005-12-19 16:47:05 | 只看该作者
    假设其他的get函数没有错误,即不涉及字符串类型和数值类型转换的问题。那么,我的看法如下:

    好像是逻辑错了。如果是时间年GetYear( )>2003了,还有必要继续IF么?

    这样改试试看:
    if( time.GetYear( )=2003 )
                                         { if ( time.GetMonth( )>6)
                                            show.outofdate_message_and_exit( );
                                           if (time.GetMonth()=6) and ( time.GetDay( )>27)
                                             show.outofdate_message_and_exit( );
                                             Else
                                               .......

    [ 本帖最后由 archonwang 于 2005-12-19 16:54 编辑 ]
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2018-2-28 18:04
  • 签到天数: 40 天

    连续签到: 1 天

    [LV.5]测试团长

    9#
    发表于 2005-12-19 16:56:07 | 只看该作者
    大于2003的逻辑自己写吧。应该不难的。顺便整理下看看。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    10#
    发表于 2005-12-19 17:12:08 | 只看该作者
    那我借这个问个问题吧:如果基础设置错了,下面的算法是否还要测试?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    11#
    发表于 2005-12-19 17:19:58 | 只看该作者
    我也见过这道测试考试的题,当时没做出来。。。。。。。
    错误大家都知道,关键是怎么改
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2018-2-28 18:04
  • 签到天数: 40 天

    连续签到: 1 天

    [LV.5]测试团长

    12#
    发表于 2005-12-19 17:21:54 | 只看该作者

    个人意见,仅供参考。

    如果已确认基本的Get函数(GetYear/GetMonth/GetDay)发生了错误,继续往下测试只不过是浪费时间而已。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    13#
    发表于 2005-12-20 17:02:21 | 只看该作者
    咱们都知道,应该按顺序判断年-月-日。那么修改如下:

       //给用户的软件设置使用日期的限制
       //2003年6月23日以后,弹出软件过期的错误不能用的信息
       //更改

       Ctime.time=CTime::GetCurrentTime();
       if(time.GetYear()>2003)
       {
               show.outofdate_message_and_exit();
               return;
       }
       else if(time.GetYear()==2003)
       {
               if ( time.GetMonth( )>6)
               {
                       show.outofdate_message_and_exit();
               }
            else if(time.GetMonth()==6)
            {   
                       if(time.GetDay()>23)
                       {
                               show.outofdate_message_and_exit();
                               return;
                       }
               }
       }
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    14#
    发表于 2005-12-20 17:57:27 | 只看该作者
    楼上的写的比较清晰了
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-11 09:18 , Processed in 0.074967 second(s), 28 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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