51Testing软件测试论坛

标题: Winrunner中怎么样判断输入框的字符是字母还是数字? [打印本页]

作者: yuzhu656    时间: 2006-7-3 14:07
标题: Winrunner中怎么样判断输入框的字符是字母还是数字?
Winrunner中怎么样判断输入框的字符是字母还是数字?
作者: kason163    时间: 2006-7-3 16:17
比较"阿斯克码"应该可以吧!!
作者: yuzhu656    时间: 2006-7-4 10:18
标题: 回复 kason163 的帖子
可不可以写出代码,我不知道怎么样着搞,我也想过用“阿斯克码”比较,可不知道怎么样着写
作者: chl6018    时间: 2006-7-4 11:23
set_window ("xxxxx", 4);
        edit_set ("yyyy", "a234");
        edit_get_text("yyyy",text);
        a=length(text);
        flag=1;
        for (i=1;i<=a;i++)
        {
                b=substr(text,i,1);
                c=ascii(b);
                if (c<48||c>57)
                 {       
                         flag=0;
                        report_msg("it's not a number,include the denominator");
                        break;
                 }
        }
       
        if (flag==1)
        {
                report_msg("it's a number");
        }



测试通过了的,yuzhu656好好理解一下
flag 变量是一个标致
作者: xihong2004    时间: 2006-7-4 11:31
不错
作者: yuzhu656    时间: 2006-7-4 11:38
标题: 回复 chl6018 的帖子
在这里我非常谢谢你,谢谢大家
作者: yuzhu656    时间: 2006-7-4 13:47
标题: 我把他写成函数,可不知道怎么调用了
#判断是否是数字
      public function chrascii(string text)
          {
           a=length(text);
           for(i=1;i<=a;i++)
              {
               b=substr(text,i,1);
                   c=ascii(b);
                   if(c<48||c>57)
                      {
                                   flag=1;
                      return(flag);
                                  }
                      }
           }
作者: yuzhu656    时间: 2006-7-4 14:02
标题: 还有语法上的错误,搞不懂
在上面的函数中还有语法上的错误,不是很明白怎么还有语法上的错误呢
作者: winterson    时间: 2006-7-4 18:57
a,b,c,i,flag这些变量要先申明后,才能用
作者: heqingbluesky    时间: 2006-7-7 09:39
public function chrascii(string text)--String是系统保留字符。变量类型只有in,out,inout.
作者: yuzhu656    时间: 2006-7-7 10:40
谢谢
作者: heqingbluesky    时间: 2006-7-19 16:42
在WR中,变量可以不声明就使用的。
作者: yuzhu656    时间: 2006-7-20 10:51
标题: 回复 #12 heqingbluesky 的帖子
照你那么说,那为什么我上面的函数会用不了?
作者: lantianwei    时间: 2007-7-16 10:13
#判断是否是数字
      public function IsNum(in text)
      {
            auto a,b,c,flag,i,E_FAIL;
                flag=0;
        a=length(text);
        for(i=1;i<=a;i++)
         {
           b=substr(text,i,1);
           c=ascii(b);
           if(c<48||c>57)
              {
                flag=1;
              }
          }
                  if(flag==0)
                  return E_OK;
                  else
                  return E_FAIL;
      }
以上是我重新修改的代码,可以使用
用法:先把该脚本的模式改成Compiled Module   
         然后在你需要调用的地方load一下
         再使用 IsNum(in text)
         最后根据返回值判断是否是数值
如有不足之处请大家指正!
作者: dionysus    时间: 2007-7-16 22:04
呵呵,看到这么多WR高手发表回复真是高兴,我也学习了,呵呵。让WR版块成为一个探讨型,学习型的版块吧,不管是新手还是老鸟大家一同进步sdlkfj3

[ 本帖最后由 dionysus 于 2007-7-16 22:07 编辑 ]
作者: lantianwei    时间: 2007-7-17 09:14
呵呵 多谢版主给我送那么多鲜花,太感谢了!!!sdlkfj5
作者: yanghua135    时间: 2007-7-24 09:35
谢谢了
作者: long-run    时间: 2007-8-16 13:18
ding
作者: storm    时间: 2007-8-29 15:29
学习了,谢谢..sdlkfj2
作者: cc_test    时间: 2007-10-25 17:04
不错,谢谢chl6018的帮助,更谢谢蓝天伟的整理。

[ 本帖最后由 cc_test 于 2007-10-25 17:06 编辑 ]
作者: kk1014    时间: 2007-10-27 09:45
我也学习了.
作者: yuguojing    时间: 2008-3-21 17:30
标题: 回复 14# 的帖子
顶^^^^^^^^^^^^^^66
            学习中^^^^^6666
作者: kai25xin    时间: 2008-7-16 16:59
真好!




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2