51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3193|回复: 6
打印 上一主题 下一主题

提示框,在脚本中如何判断这个脚本出现了?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2009-6-24 17:25:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在WinRunner自带得软件中,进入open order界面,输入ordernum为100,点击OK,出现提示框,在脚本中如何判断这个脚本出现了?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2009-6-24 17:42:52 | 只看该作者
太模糊,看了半天没看明白
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2009-6-24 17:55:21 | 只看该作者
在数据驱动脚本中,ordernum的数据是1,6,100,8
系统运行1和6没有问题,运行到100时,由于系统没有ordernum为100得数据,系统给予一个提示框,这时系统报错

解决办法是:写tsl跳过这个提示框,这时就要判断这个提示框是否存在
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2009-6-25 10:32:29 | 只看该作者
table = "lsson8.xls";
rc = ddt_open(table, DDT_MODE_READ);#ddt_open(data_table_name [ , mode ] =>mode分为DDT_MODE_READ(read-only)、DDT_MODE_READWRITE (read or write)。mode 默认为DDT_MODE_READ
if (rc!= E_OK && rc != E_FILE_OPEN)#E_OK        0        Operation successful---E_FILE_OPEN        -10007        Cannot open file. File may already be open.
        pause("Cannot open table.");
ddt_get_row_count(table,table_RowCount);#获得表的行数
for(table_Row = 1; table_Row <= table_RowCount; table_Row ++)
{
        ddt_set_row(table,table_Row);
       
        # Flight Reservation
                set_window ("Flight Reservation", 3);
                menu_select_item ("File;Open Order...");
       
        # Open Order
                set_window ("Open Order", 1);
                button_set ("Order No.", ON);
                edit_set ("Edit_1", ddt_val(table,"Order_Num"));
                button_press ("OK");
               
                wait(1);
       
        if(win_exists("Flight Reservations")!=E_OK)
        {
        # Flight Reservation
                set_window ("Flight Reservation", 3);
                menu_select_item ("File;Fax Order...");
       
        # Fax Order No. 3
                set_window ("Fax Order No. 3", 1);
               
                edit_get_text("# Tickets:",tickets);
            edit_get_text("Ticket Price:",price);
            edit_get_text("Total:",total);
               
                #tl_step ( step_name, status, description );把测试脚本分成几块,并在当前测试结果里插入状态信息
                #Set to 0 for pass, or any other integer for failure.
                if(tickets*price==total)
                        tl_step("总计测试",0,"正确.Order_Num为"ddt_val(table,"Order_Num")":"tickets" 张票,每张 $ "price",总计 $"total".");
                else
                    tl_step("总计测试",1,"Error.Order_Num为"ddt_val(table,"Order_Num")":"tickets" tickets at $ "price" does not equal $"total".");
       
                button_press ("Cancel");
        }
        else
        {
                report_msg("Order_Num为"ddt_val(table,"Order_Num")"查询不到数据");
                set_window ("Flight Reservations", 3);
                button_press ("确定");
                set_window ("Open Order", 3);
                button_press ("Cancel");
        }
       
}
ddt_close(table);

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2009-6-25 10:34:33 | 只看该作者
之前代码差不多也是这样,但是不成功,加了wait(1),就可以了,不知道为什么
回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    2016-8-25 11:11
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    6#
    发表于 2009-7-15 19:03:02 | 只看该作者
    #4
    直接在win_exists( window [, time ] )中加个延迟时间
    if (win_exists ("Flight Reservations",5)==E_OK)
    {...}
    这样就可以了

    [ 本帖最后由 liujinkui 于 2009-7-31 13:42 编辑 ]
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    7#
    发表于 2009-7-30 15:35:46 | 只看该作者
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-18 00:28 , Processed in 0.069429 second(s), 26 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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