runner1721 发表于 2005-11-14 16:11:52

敬请指点,WinRunner的时间角本录制。在线等

在查询功能中,都会有一项,就是按时间查询。当我们用WINRUNNER录制角本后回放,因为时间在不停的改变,故代码停顿于此,请问各位,如何修改我们的角本达到能回放的目的呢?谢谢。

急,在线等,直到解决问题。

[ 本帖最后由 runner1721 于 2005-11-14 16:16 编辑 ]

runner1721 发表于 2005-11-14 16:41:41

怎没高手指点啊

怎么高手指点啊,连看都很少,难到我的问题很简单得大家连看或指点一下都不愿意吗?

sbandbt 发表于 2005-11-14 16:57:19

我也不懂,不过给你顶一下~~~~~~~~~~`

runner1721 发表于 2005-11-14 19:16:26

谢上面的同仁

winterson 发表于 2005-11-23 22:01:55

有点建议,不知可行不可行
定义一个变量,获取系统时间,你把输入的时间用这个变量代替,try,good luck!

zhenhaiou 发表于 2005-11-24 10:57:15

时间改变了怎么会让脚本停止?

小曲曲 发表于 2005-11-25 16:39:48

我现在也遇到这样的问题。我们是用一个窗口可以选择时间。如果我选2005年3月1日,但是每天的时间都在变,如果过了3个月,再运行我的程序,就会出错。那样我要在窗口上点那个翻页的按钮才能选3个月以前的时间。这个怎么处理呢?

hihihaha910 发表于 2005-11-25 19:06:07

我的想法:

hihihaha910 发表于 2005-11-25 19:23:25

我的想法是:
写一个函数得到year和month,substr(time,1,6)——具体函数我不太清楚
假设                  year.month
现测试时间Y2.M2       2006.1
原测试时间Y2.M2       2005.8
要测试的数据Y1.M1   2005.3
获取一下年份和月份,翻页数=测试时间-测试数据;(y2-y1)×12+m2-m1

小曲曲 发表于 2005-11-28 09:25:56

谢谢上面兄弟的指点,我来试试看

小曲曲 发表于 2005-11-29 09:58:21

楼主的问题解决了吗?我的问题解决了。还的感谢楼上的兄弟。我自己写了个函数
#Example:
#      SetDateOnCalendar("11/16/2005","09/17/2006");   
public function SetDateOnCalendar(in StrCurrentDate,in StrSetDate//StrCurrentDate就是当前时间,StrSetDate就是你设置的时间
{auto StrCDYear;
   auto StrSDYear;
    auto StrCDMonth;
    auto StrSDMonth;
    auto StrSDDay;
   auto i;
    auto m;
   auto n;
auto Table_Row;
   auto Table_Col;
   auto Text;
   auto a[];
   auto k;
       auto not_found;
       k=0;
       a=0;
       not_found=0;
       StrCDYear=substr(StrCurrentDate,7,4);
       StrSDYear=substr(StrSetDate,7,4);
       StrCDMonth=substr(StrCurrentDate,1,2);
       StrSDMonth=substr(StrSetDate,1,2);
       if (substr(StrSetDate,4,1)=="0")
       StrSDDay=substr(StrSetDate,5,1);
       else
          StrSDDay=substr(StrSetDate,4,2);
                     set_window("Calendar",6);
       web_set_event("html_table","click",HANDLER,ENABLE);
#        change date page
       if (StrCDYear>StrSDYear)//翻页       
   {
          for(i=1;i<=(StrCDYear-StrSDYear)*12+(StrCDMonth-StrSDMonth);i++)
          web_image_click("left", 3, 2);
           }
##        change date page //翻页          
    if(compare_text(StrCDYear,StrSDYear)&&(StrCDMonth>StrSDMonth))
       {
          for(i=1;i<=(StrCDMonth-StrSDMonth);i++)
          web_image_click("left", 3, 2);
           }
#        change date page
   
          if(compare_text(StrCDYear,StrSDYear) &&(StrCDMonth<StrSDMonth)) //翻页       
       {
          for(i=1;i<=(StrSDMonth-StrCDMonth);i++)
           web_image_click("right", 4,3);
           }
#        change date page
   if (StrCDYear<StrSDYear)//翻页       
        {
          for(i=1;i<=(StrSDYear-StrCDYear)*12+(StrSDMonth-StrCDMonth);i++)
          web_image_click("right", 4,3);
      }
   tbl_get_rows_count("DateSelet",Table_Row);
       tbl_get_cols_count("DateSelet",Table_Col);
       
      for(m=5;m<=Table_Row;m++)//找你设置的天       
          {
          for(n=1;n<=Table_Col;n++)
          {
          tbl_get_cell_data("DateSelet",m,n,Text);
          
           a=Text;
          k++;
             }
          }
          for(k=0;k<=(Table_Row-5)*Table_Col-1;k++)
          {
           not_found=0;
          if(compare_text(a,StrSDDay))
      {
          web_event("{class: object,MSW_class: html_general_element,html_name: "&a&"}", "click");
          break;
          }
               
               
       }
       
                  
}

Mac.Meng 发表于 2005-11-29 17:22:11

学习中

hihihaha910 发表于 2005-11-30 08:57:12

问曲曲

你用的是什么软件?感觉写得比想象中的复杂了点。不过值得学习,谢谢

小曲曲 发表于 2005-11-30 16:51:32

我们用的那个calendar的小窗口是用javascript写的。-< 2005-11->下面就是显示的天数,都放在一张表里。-< 就是象前翻页,->就是象后翻页啊。2005-11就是当前月。所以首先确定先翻几页,然后再找到你要的是哪天啊。
页: [1]
查看完整版本: 敬请指点,WinRunner的时间角本录制。在线等