开发者社区> 玄学酱> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Loadrunner随机生成15位数字串

简介:
+关注继续查看

Loadrunner随机生成15位数字串

PS:本人在51testing和sina blog上的文章全部为原创转载请注明出处!!

今天看到一个网友的问题,是想生成一个15位的数字串来进行参数化输入,要求如下:
1、前4位均是0436
2、其余的是11位的随机数
原帖地址:http://bbs.51testing.com/viewthread.php?tid=89018&page=1&extra=page%3D1

拿到问题,我思考了一下,前4位使用固定值很好办,唯一的问题就是生成随机数了;
生成随机数而且用lr实现,目前我知道2种方法:
1、使用c语言的rand()函数
2、使用lr的参数类型中的random number来生成

因为要生成固定的位数,所以我决定使用lr的random number方法;另外也是我想到rand()函数实现起来非常麻烦,~解决问题为主。

我的回复如下:
##############
1、在参数表(Parameter List)中新建一个参数(Parameter),命名为"num"
2、选择参数类型(Parameter type)为随机数(Random Number),
3、选择参数范围(Parameter range)为最小为1,最大为99999999
4、在随机数格式(Number format)里选择“%08lu”
然后引用类似为:
web_sumbit_data(
……
……
"card_id=0436000{num}";
LAST);
说明:随机数按照位数在c语言里不好实现,所以我选择了lr的参数化来生成。但是lr的参数化里最多只能生成8位数字(这个我还不知道能不能改),所以你要求有11位数字的时候,我就把你要求的固定的"0436"变成了"0436000",这样参数化以后就可以生成类似"043600012345678"的15位数字了。
##############

回复完毕,又仔细想想发现自己很傻,既然lr支持字符串和参数在一起被引用,那么为什么只用一个参数才解决呢?而且解决的也不彻底,还有3位数是固定值。。发现自己还真的很笨~~~~

更好的实现方法是创建2个或者多个随机数类型的参数(Random Number Parameter),这样,就能把随机数的参数化位数增加到11位甚至更多;~想参数多少位就多少位,嘿嘿

还是以15位的这个问题来说吧:
如图再增加一个随机数.

然后引用方法类似:
web_sumbit_data(
……
……
"card_id=0436{num1}{num}";
LAST);

搞定!!


相关阅读:








====================================分割线================================



最新内容请见作者的GitHub页:http://qaseven.github.io/

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
+关注
玄学酱
这个时候,玄酱是不是应该说点什么...
20683
文章
438
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载