51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

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

[原创] QTP 取值特殊方式,求高手解答下,谢谢!

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2011-5-16 18:33:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我现在要取一个值,放在文档中
例,,,全数字5位,全数字10位,全英文3位,,  逗号为分隔符
11111,12345677890,abc,,,,,,,,,这种形式的,请问有没有好办法。。。
菜鸟跪求
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2011-5-16 20:50:47 | 只看该作者
压根没看懂你在说什么....要取随机字符串?
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2011-5-16 22:37:41 | 只看该作者
不明白,如果是随机数的话,可以参考类似的方法进行……

  1. '**********************************************************
  2. '设计说明: 根据日期、时间和两组随机数生成相对较为唯一的字符串,常用于文件的非覆盖保存
  3. '程序输入:
  4. ' 1. circleNumber -- 循环次数
  5. '程序输出: 日期、时间、随机数、随机数的拼接字符串如:20110107_161003_93778_47149
  6. '设计人员: 刘毅(LIUYI)
  7. '设计时间: 2011-01-07
  8. '调用举例: Printer GenerateUniqueStr("30")
  9. '**********************************************************

  10. Public Function GenerateUniqueStr(circleNumber)
  11. If Trim(circleNumber) = "" Then
  12. circleNumber = randomnumber.Value(20,50)
  13. Else
  14. If circleNumber < 11 Then
  15. circleNumber = circleNumber + 20
  16. End If
  17. End If

  18. randomNo = randomnumber.Value(10,Abs(circleNumber))
  19. For i = 1 to randomNo
  20. randomNum1 = randomnumber.Value(10000,99999)
  21. randomNum2 = Int((99999-10000+1)*rnd+10000)
  22. Next

  23. GenerateUniqueStr = FormatDate(Now,"yyyymmdd_hh24miss")&"_"&randomNum1&"_"&randomNum2
  24. End Function

  25. '**********************************************************
  26. '调用举例: 生成指定长度的随机字符串,不含特殊字符
  27. '程序输入:
  28. ' 1. appointedLen - 需要的字符串长度
  29. '程序输出: String类型,指定长度的随机数
  30. '设计人员: 刘毅(LIUYI)
  31. '设计时间: 2011-01-04
  32. '调用举例: msgbox GenSpeLenRandStr(10)
  33. '**********************************************************

  34. Function GenSpeLenRandStr(appointedLen)
  35. Dim elements1:elements1 = "1,2,3,4,5,6,7,8,9,0"
  36. Dim elements2:elements2 = "a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z"
  37. Dim elements3:elements3 = "A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z"
  38. Dim eleArray:eleArray = Split(elements1 & elements2 & elements3 , ",")

  39. If IsNumeric(appointedLen) And Abs(appointedLen) > 0 Then
  40. For i = 1 To appointedLen
  41. Randomize
  42. randNum = RandomNumber.Value(0,61)
  43. tmpStr = tmpStr + eleArray(randNum)
  44. Next
  45. Else
  46. tmpStr = "必须输入大于零的整型数字!"
  47. End If

  48. GenSpeLenRandStr = tmpStr
  49. End Function
复制代码
回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    2015-4-16 21:09
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]测试小兵

    4#
    发表于 2011-5-17 09:31:41 | 只看该作者
    搞毛啊,这些提问题的人总喜欢把问题描述得极其抽象。版主你们就不能规范一下提问的格式么?知道XML文件为什么是通用的么?
    解决这些抽象的问题,只会浪费大家的时间。别把51testing论坛搞得跟百度贴吧一样。充斥着没半点含量的贴子。

    根据本人的猜想,楼主貌似是想在一堆 ,,,,,,,,,,,中取指定位置的几个字符串。
    这个可以一次性把内容读进内存,然后用split方法截取,保存进数组里面,然后用数组下标去找就行了。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5#
    发表于 2011-5-17 11:02:20 | 只看该作者
    搞毛啊,这些提问题的人总喜欢把问题描述得极其抽象。版主你们就不能规范一下提问的格式么?知道XML文件为什 ...
    fly_away 发表于 2011-5-17 09:31



    你理解力比我好
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2018-7-13 14:04
  • 签到天数: 6 天

    连续签到: 1 天

    [LV.2]测试排长

    6#
    发表于 2011-5-17 11:36:36 | 只看该作者
    你的意思是想从这个字符串中取一个吗?
    如果是:

    1. srt = "11111,12345677890,abc"
    2. TmpArry = split(str,",",-1,1)'以逗号进行分割
    3. for i = lbound(TmpArry ) to ubound(TmpArry)
    4.    msgbox TmpArry (i)'//这值取到了,你是想随机还是怎么样都可以了。
    5. next

    复制代码
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    7#
    发表于 2011-5-17 22:35:04 | 只看该作者
    呵呵,提问者的往往不会去看那些所谓的规范,这些还是取决于提问者本身的表达能力。
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-5-11 05:33 , Processed in 0.071371 second(s), 32 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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