51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 8726|回复: 25
打印 上一主题 下一主题

高手请进!

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2004-12-24 16:52:25 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
有一个程序启动时,有一个静态文本,根据情况的不同,静态文本会有三种情况,做不同的事情
1.无任何文本
2.显示"could contact sever"
3.显示" network connectivity lost"
我的要求是,
              如果无显示,无操作.
               如果显示"could contact sever",把文字could contact sever写入report,重新启动程序.
               如果显示"network connectivity lost",把文字network connectivity lost写入report,重新启动程序
请大家来帮忙啊
MSN:lousia_qian@hotmail.com
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
  • TA的每日心情
    难过
    2015-9-21 13:50
  • 签到天数: 4 天

    连续签到: 1 天

    [LV.2]测试排长

    26#
    发表于 2006-12-6 15:18:02 | 只看该作者
    很完美的解决了一个问题。
    向斑竹致敬!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    25#
     楼主| 发表于 2005-1-6 14:40:44 | 只看该作者
    谢谢拉。我试试
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    24#
    发表于 2004-12-30 21:47:57 | 只看该作者
    Originally posted by lousia at 2004-12-29 03:03 PM:
    很奇怪啊:
    描述:刚开始learn时同一个BUTTON的属性是{class: object,MSW_id:MSW_class: Button} 通过GUI Map Configuration 把MSW_id去掉后,重新learn,button 的属性变成{class:push_button:location:10  ...}
    ...

    1.你可以试着将OBJECT改成push_button,(你要改一个按钮的属性应该很容易的
    就在GUI CONFIGURATION那里改就行啦,)到GUI CONFIGURATION那里去改,
    然后COPY前两行到起到脚本里.
    当WR一起动时,就把它当成push_button来认,看这种行不行!试一下!
    2.不行啦,虚拟控件是自己做的!(建议看说明书第二版)
    3.基本像shyfish所说的那样,其它的你可以自己试,(学WR就是这么的幸苦的):d:d:d:d:d:d:d
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    23#
     楼主| 发表于 2004-12-30 16:39:34 | 只看该作者
    谢谢,
    大家再给点建议吧
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    22#
    发表于 2004-12-29 16:46:43 | 只看该作者
    呵呵,是很奇怪,没碰到过。不过WR增加一些属性倒是很正常的,因为要区别各个控件
    1。不知道
    2。不能,不是。它都能认出来了,怎么会是虚拟的,虚拟的是自己虚的
    3。是,至少我试过的虚拟按钮是这样的,WR主动说obj_exists不支持虚拟控件
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    21#
     楼主| 发表于 2004-12-29 15:03:06 | 只看该作者
    很奇怪啊:
    描述:刚开始learn时同一个BUTTON的属性是{class: object,MSW_id:MSW_class: Button} 通过GUI Map Configuration 把MSW_id去掉后,重新learn,button 的属性变成{class:push_button:location:10  ...}
      我的问题是:1.怎么class从object 变到 push_button了呢?
                      2.同一个button,MSW_id的变化就能说明这个Button是虚拟控件吗?
                      3.如果是虚拟控件是不是不能用obj_exist函数?

    PS:Teltel程序是用VC++编写的
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    20#
    发表于 2004-12-28 17:36:33 | 只看该作者
    看你的GUI里面那些Button都是object,而不是push_button(图标和class都说明它是object),怎么不是push_button呢?我试过Button(非虚拟的)和static text都可以用obj_exists作出正确的判断
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    19#
    发表于 2004-12-28 17:34:17 | 只看该作者
    你要重新录制一下脚本,由于你那个属性的改变不是永久的,
    你所做的只是在没有关闭WR之前有效,如果关闭了就无效了,
    所以你要做长久的,
    就是在起动脚本(LIB)里加两行TSL.
    在论坛里有,你找一下吧.

    [ Last edited by QA_BAY on 2004-12-28 at 17:36 ]
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    18#
     楼主| 发表于 2004-12-28 12:56:56 | 只看该作者
    Originally posted by QA_BAY at 2004-12-28 08:17 AM:
    如果是BUTTON,那应该可以把MSW_ID去掉,
    你可以这样,在EDIT MAP GUI 里面看一下BOTTON这个的属性!看一下有没有MSW_ID.如果有就要到GUI CONFIGURATION那里去掉!
    这就MSW_ID就不会变来变去的啦!

    我是这样修改的,但还是不能判断.
    用GUI Spy看出Dial 按钮具有{class: object,MSW_id:MSW_class: Button}
    选择Tools->GUI Map Configuration->object->configuration修改把MSW_id去掉后变成{class: object,MSW_class: Button,location: 10},
    然后用if (obj_exists("Button_10")==E_OK) 去判别还是不能判断啊???

    D:\\pic.jpg

    本帖子中包含更多资源

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

    x
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    17#
     楼主| 发表于 2004-12-28 12:12:22 | 只看该作者
    Originally posted by QA_BAY at 2004-12-28 11:33 AM:
    问题解决,非常开心!
    工资不会给老板扣掉是不是应该拿出一部分出来请大家吃饭呢?哈哈哈

    好啊,你哪天来上海和我说一下.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    16#
    发表于 2004-12-28 11:32:09 | 只看该作者
    问题解决,非常开心!
    工资不会给老板扣掉是不是应该拿出一部分出来请大家吃饭呢?哈哈哈
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    15#
     楼主| 发表于 2004-12-28 10:48:10 | 只看该作者
    Originally posted by lousia at 2004-12-24 04:52 PM:
    有一个程序启动时,有一个静态文本,根据情况的不同,静态文本会有三种情况,做不同的事情
    1.无任何文本
    2.显示"could contact sever"
    3.显示" network connectivity lost"
    我的要求是,
       ...

    这个问题最终还是解决了,我找到了一个登陆成功的Tip of the day窗口来判断.
    if(win_exists("Tip of the day")==E_OK) 问题解决了,老板要的结果得到了.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    14#
    发表于 2004-12-28 09:23:43 | 只看该作者
    呵呵,如果显示为button_1或button_11并在变化的就说明它能够正确识别成按钮,而你也没有把它做成虚拟控件了。而不成功的原因是它的ID一直在变了,自然每次都找不到了,用楼上版主的方法吧,如果不行再加一个location的属性看一下可不可以
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    13#
    发表于 2004-12-28 08:17:15 | 只看该作者
    如果是BUTTON,那应该可以把MSW_ID去掉,
    你可以这样,在EDIT MAP GUI 里面看一下BOTTON这个的属性!看一下有没有MSW_ID.如果有就要到GUI CONFIGURATION那里去掉!
    这就MSW_ID就不会变来变去的啦!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    12#
     楼主| 发表于 2004-12-28 01:06:04 | 只看该作者
    Originally posted by shyfish at 2004-12-27 05:54 PM:
    你的obj_exists("Button_1"==E_OK)这个Button_1是虚拟的按钮吗?如果是,那么无论这个按钮是否存在,obj_exists("Button_1"==E_OK)返回的都是FALSE,即没有找到。如果不是虚拟的,那么这句语 ...

    我看了一下,确实是这个问题,同一个button每次启动后,名字都会变,一会button_1,一会button_11,一会button_4的,我的窗口上有好几个Button因该怎么处理呢?
    于是我用if(obj_exists("{class: push_button,MSW_id: 1002}")!=E_OK)来判断,它还是找不到,我该怎么处理呢?同样性质的问题,我用set_window("TelTel Beta", 1);
    obj_get_text("{ class: static_text, MSW_id: 2}", text);
    if(text=="Could not contact server."||text=="Network connectivity lost.")
    能正常判断,我想可能是static_text的原因,但是这个Button,怎么来判断呢?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    11#
    发表于 2004-12-27 17:54:29 | 只看该作者
    你的obj_exists("Button_1"==E_OK)这个Button_1是虚拟的按钮吗?如果是,那么无论这个按钮是否存在,obj_exists("Button_1"==E_OK)返回的都是FALSE,即没有找到。如果不是虚拟的,那么这句语句应该是可以正常工作的
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    10#
    发表于 2004-12-27 12:58:43 | 只看该作者
    if(obj_exists("Button_1"==E_OK)#用TELTEL程序上出现一个Button_1来判断登陆成功,,这里可能有问题,因为不管登陆成功不成功,obj_exists("Button_1"==E_OK都是否定的,下面的代码永远执行不了,直接调到ELSE去做了,请大家给点建议

    刚才下载了TELTEL,还是不行,不知道怎么搞的!
    LOING很慢,还有显示network connectivily lost


    现在你知道错在哪里的话,那就改一下试试!
    If (button_get_info("Button_1","enabled",val)!=E_OK)
            if (val!=0)
       report_msg("i");
       report_msg("success");
       wait(2);
       invoke_application("D:\\FXProtect\\FXProtect.exe","","D:\\FXProtect",SW_HIDE)
    button_get_info(返回按钮属性的值)在insert ---funciton---from fuction generator里面.

    [ Last edited by QA_BAY on 2004-12-27 at 13:01 ]
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    9#
     楼主| 发表于 2004-12-27 12:25:01 | 只看该作者
    Originally posted by QA_BAY at 2004-12-27 11:21 AM:
    你要看LOGIN之前与之后有什么驱别,这样就可以做到你想要的500次了!

    我是区别了啊,登陆成功的话,通过屏幕上出现一个Buttom_1.
                      如果Buttom_1,不存在,检查一个文本上写的东西,
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    8#
     楼主| 发表于 2004-12-27 12:18:02 | 只看该作者
    Originally posted by QA_BAY at 2004-12-26 10:41 PM:
    由于我实在打不开你的那个TELTEL!
    所以只能拿MSN试了一下可以的!
    那三种情况你只能自己写条件了!
    这个是自己的初步!
    供你参考一下!


    static app_name="C:\\Program Files\\MSN Messenger\\msnmsgr. ...


    for(i=1;i<=5;i++)
    {
    invoke_application("C:\\Program Files\\TelTel\\TelTel.exe","","C:\\Program Files\\TelTel\\",SW_RESTORE);
    wait(20);
    if(obj_exists("Button_1")==E_OK)#用TELTEL程序上出现一个Button_1来判断登陆成功,,这里可能有问题,因为不管登陆成功不成功,obj_exists("Button_1")==E_OK都是否定的,下面的代码永远执行不了,直接调到ELSE去做了,请大家给点建议
    {
    report_msg(i);
    report_msg("success");
    wait(2);
    invoke_application("D:\\FXProtect\\FXProtect.exe","","D:\\FXProtect",SW_HIDE););#通过调用FXProtect.exe来关闭TELTEL的进程来关闭程序.

    wait(5);
    }
    else
    {
    set_window("TelTel Beta", 1);
    obj_get_text("{ class: static_text, MSW_id: 2}", text);
    if(text=="Could not contact server."||text=="Network connectivity lost.")
    {
    report_msg(i);
    report_msg(text);
    wait(2);
    invoke_application("D:\\FXProtect\\FXProtect.exe","","D:\\FXProtect",SW_HIDE);#通过调用FXProtect.exe来关闭TELTEL的进程来关闭程序.
    wait(3);
    }
    }


    }
    写了上诉程序,如果出现Could not contact server和Network connectivity lost
    能判断出这两种情况了
    QA_BAY一定要给点建议啊,你说的
    obj_check_bitmap("Online Status", "Img2", 1);
    obj_check_info("Online Status","enabled",1,10);
            rc=obj_mouse_click("Online Status", "5", "51", LEFT);
            if (rc = E_OK)
    这两条语句我还用不来.obj_check_info("Online Status","enabled",1,10);
            rc=obj_mouse_click("Online Status", "5", "51", LEFT);
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-28 05:53 , Processed in 0.077393 second(s), 27 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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