51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 2230|回复: 1
打印 上一主题 下一主题

[原创] 【性能】Loadrunner常用字符串处理函数

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-2-18 16:31:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
char *a="I am", *b="Teacher" ,e   ;

int c  ,d  ;

1、Strcat:连接2个字符串

      strcat(a,b)                     =>a="I am Teacher"


2、Strcpy:(重新)赋值函数

      Strcpy(a,"Teacher")       => a="Teacher"


3、Strchr:返回字符串制定字符及后面的字符串

      e=(char *) strchr(a,'a')  => e='am'


4、比较函数:strcmp(大小写敏感)/stricmp(大小写不敏感)

     c=strcmp(a,b)   如果 a 与 b 完全一样,则 c = 0;

                              如果 a 与 b 只是大小写不一样,其他都一样,则 c = -1;

                              如果 a 比 b 只是多几个字符,其他都一样,则 c = 1;

                              如果 a 与 b 完全不一样,则 c = -1 ;



     d=stricmp(a,b)   如果 a 与 b 完全一样,则 d = 0;

                              如果 a 与 b 只是大小写不一样,其他都一样,则 d = 0;

                              如果 a 比 b 只是多几个字符,其他都一样,则 d >0;

                              如果 a 与 b 完全不一样,则 d <0 ;

     所以 strcmp/stricmp比较的结果是:a 与 b 相同为0,包含为1,不同为-1


5、strlen:返回字符串长度

     c=strlen(a) => c=4


6、strncmp:对比2个字符串的前N位:相同为0,包含为1,不同为-1

      d=strncmp(a,b,2)  比较a,b 字符串前面2位是否相同


7、lr_save_var:使用LR截取字符串长度

      lr_save_var(lr_eval_string("HelloMoble!")+2,5,0,"name");

      lr_output_message("%s",lr_eval_string("{name}"));   =>lloMo


8、lr_save_string/lr_save_int :将程序中的常量或变量保存为LR中的参数

     lr_save_string("OK,Goode","request");

     lr_save_int(123,"id");        


9、lr_eval_string:将LR中的参数转换为字符串

     lr_output_message("%s",lr_eval_string("{request}"));  


10、lr_save_datetime:获取当前系统时间(DATE_NOW/TIME_NOW; ONE_DAY/ONE_HOUR/ONE_MIN)

       lr_save_datetime("%y-%m-%d  %H:%M:%S",DATE_NOW,"startdate");                          =>获取系统当前时间

       lr_save_datetime("%y-%m-%d  %H:%M:%S",DATE_NOW+3*(ONE_DAY),"startdate");  =>获取系统当前时间+3天时间


11、web_get_int_property():获取相关信息

       11.1、HTTP_INFO_RETURN_CODE

               request:web_url("myrequest","URL=https://www.csdn.net/","TargetFrame=_TOP",LAST);

               c = web_get_int_property(HTTP_INFO_RETURN_CODE);

               lr_output_message("%s",c);   => 200


       11.2、HTTP_INFO_RETURN_DOWNLOAD_SIZE /HTTP_INFO_RETURN_DOWNLOAD_TIEM  下载文件大小/时间

                request:web_url("myrequest","URL=https://www.csdn.net/","TargetFrame=_TOP",LAST);

                c = web_get_int_property(HTTP_INFO_RETURN_CODE);   


        11.3 、HTTP_INFO_TOTAL_REQUEST_STAT / HTTP_INFO_TOTAL_RESPONSE_STAT 返回自从首次使用其发出的请求/响应时,所有标题和正文的累积大小

                   int a,b ;

                   web_get_int_property(HTTP_INFO_TOTAL_REQUEST_STAT);

                   web_get_int_property(HTTP_INFO_TOTAL_RESPONSE_STAT);

                         request:web_url("myrequest","URL=https://www.csdn.net/","TargetFrame=_TOP",LAST);



                   a=web_get_int_property(HTTP_INFO_TOTAL_REQUEST_STAT);

                   b=web_get_int_property(HTTP_INFO_TOTAL_RESPONSE_STAT);

                     lr_output_message("%d,%d",a,b);

                   REQUEST_STAT:把所有的request的大小加起来就是   

                   RESPONSE_STAT:统计所有响应有效的影响大小(可以直接相加 这行的数据[M事故ID:MMSG-26385])


12、strtok:分割字符串

       e = (char*)strtok("19_254_4587","_")

        while( e != null ){

        lr_output_message("%s",e);   => 19;254;4587  根据“_”进行分割

         e = (char*)strtok(null,"_");     =>如果不加上这句就是死循环

            }


13、类型转换:atoi:字符串转成int     eg: atoi(lr_eval_string("{id}")) ;

                        atof:字符串转成float

                        atol:字符串转成long

                        itoa:int转成字符串


14、在LR中面获取系统当前时间使用 = time(NULL)


15、设置让LR同时发送8个请求 web_set_sockets_option("MAX_CONNECTION_PER_HOST","8");


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

  • TA的每日心情
    奋斗
    2022-5-8 19:23
  • 签到天数: 137 天

    连续签到: 1 天

    [LV.7]测试师长

    2#
    发表于 2019-2-18 21:36:52 | 只看该作者
    和C语言差不多
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-4-25 19:35 , Processed in 0.066978 second(s), 22 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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