zoukankan      html  css  js  c++  java
  • 【loadrunner】:SAP-GUI脚本压测中,字符截取的问题汇总

    1,SAP-GUI的脚本和普通脚本有很大区别,在录制成功之后,脚本每一步的操作,都是格式化的,例如:

    	sapgui_set_text("合同编号", 
    		"20010494", 
    		ctxtRMF672, 
    		BEGIN_OPTIONAL, 
    			"AdditionalInfo=sapgui5018", 
    		END_OPTIONAL);
    

      这是一个在“合同编号” 中输入参数的一部操作,在这一操作中,通过LR自带的SAPgui的函数集中的set_text函数来控制输入

    合同编号:是这个text框的标题;

    20010494:是输入款的内容;

    ctxtRMF672:是这个输入框的属性id,在脚本的globals.h的头文件中:

    SAPgui的函数集大概如下,覆盖所有gui页面的操作:

     这支业务做成功之后,会返回一个提示页面信息:

    	sapgui_status_bar_get_text("paramStatusBarText", 
    		BEGIN_OPTIONAL, 
    			"Recorded status bar text: 合同 20012770已在公司代码 1000 中创建", 
    			"AdditionalInfo=sapgui5056", 
    		END_OPTIONAL);

    表名合同已经创建成功了,但是 string paramStatusBarText = “合同 20012770已在公司代码 1000 中创建”

    SAPgui的函数集范围内没有截取合同号20012770的函数,但是Lr是兼容C语言的,所以用c的字符串处理函数库,可以处理这个

        char str1[100];
        char str2[100];
        char * str3;
        strcpy(str1,lr_eval_string("{paramStatusBarText}")); //将guiBarText的text值赋值给str1
        lr_output_message("========str1返回信息为:%s,",str1);
        strncpy(str2,str1,13);                                // 截取str1的前13位赋值给str2,前13位=“合同 20012770”
        lr_output_message("========str2返回信息为:%s,",str4);    
        str3=(char *)strchr(str2,'2');                            //截取str2的从2开始至最后的字符,也就是20012770并转化成char类型赋值给str3
        lr_output_message("========str3返回信息为:%s,",str3);
        lr_convert_string_encoding( str3,LR_ENC_UTF8,LR_ENC_SYSTEM_LOCALE,"newstr3" );//这一步是转化成LR可以直接参数化使用的{newstr3}格式

    返回内容:

    Action.c(178): ========str1返回信息为:合同 20012970已在公司代码 1000 中创建,
    Action.c(181): ========str2返回信息为:合同 20012970,
    Action.c(183): ========str3返回信息为:20012970,  

    以上。

    在引入c的库函数过程中,变异一开始提示未定义错误:illegal statement termination

     具体原因是,在action里面,定义char之类的操作,应该放在最上面,把     lr_start_transaction("fnv1合同创建");移到char定义后面就行了。

  • 相关阅读:
    在Linux服务器上添加ip白名单允许ssh登录访问
    crontab + shell脚本实现文件重命名
    mysql数据库提示ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
    附加题2:中文编程的发展角度
    附加题1:实体店的未来存在形式
    第八周作业
    第七周作业
    第六周作业
    第五周作业
    第四周作业
  • 原文地址:https://www.cnblogs.com/fy--/p/14182990.html
Copyright © 2011-2022 走看看