LoadRunner如何通过脚本来判断事物通过还是失败

loadrunner性能测试的时候经常用到事物,通过事物来判断服务器性能,如何才能知道事物是通过的呢?

事物通过和失败的函数分别如下:

lr_end_transaction("事物", LR_PASS); //通过

lr_end_transaction("事物", LR_FAIL); //失败

lr_end_transaction("事物", LR_AUTO); //自动识别通过还是失败

要判断必然会出现判断语法,loadrunner里采用c语言的语法,所以其代码可以这样写

if (表达式) {
        
	lr_end_transaction("事物", LR_PASS);

	}
	else{
        
	lr_end_transaction("事物", LR_FAIL);

	}

接下来的这一步是比较重要的,表达式是什么,我们应该如何去判断事物通过。这里我们使用到一个函数

//根据左右边界截取整个返回值,存在变量result中
	web_reg_save_param("result",
	    "LB={",
	    "RB=}",
	    "Search=Body",
	LAST);
    

每一个接口都会有返回值,返回头或者返回的body都可以作为search的范围,这里取Body。返回的结果中如果有“操作成功”则事物通过。我们可以打印出来在后台看,注意这里面返回值带中文需要做特殊处理

/返回值有中文,需要转码,转码后的值存在了msg中
	lr_convert_string_encoding(lr_eval_string("{result}"),"utf-8",NULL,"outmsg");
    
    //打印返回值
	lr_output_message("转换编码后outmsg----%s",lr_eval_string("{outmsg}")); 
	n=strlen(lr_eval_string("{outmsg}"));
    lr_output_message("%d",n);

这里偷了一下懒,字符截取比较麻烦,所以直接通过返回的字符长度来判断事物是否通过。

全部代码如下:

//根据左右边界截取整个返回值,存在变量result中
	web_reg_save_param("result",
	    "LB={",
	    "RB=}",
	    "Search=Body",
	LAST);
    
    //访问事物的接口
    
	lr_start_transaction("事物");

	
	web_submit_data("web_submit_data",
		"Action=https://www.baidu.hhh.com/api/agggnee/relwulncy/getContactPhoneInfo",
		"Method=POST",
		"TargetFrame=",
		"RecContentType=application/json",
		"Referer=",
		ITEMDATA,
		"Name=caseManageId", "Value={caseManageId}", ENDITEM,
		LAST);
	
	
    //返回值有中文,需要转码,转码后的值存在了msg中
	lr_convert_string_encoding(lr_eval_string("{result}"),"utf-8",NULL,"outmsg");
    
    //打印返回值
	lr_output_message("转换编码后outmsg----%s",lr_eval_string("{outmsg}")); 
	n=strlen(lr_eval_string("{outmsg}"));
    lr_output_message("%d",n);
	if (n==37) {
        
	lr_end_transaction("事物", LR_PASS);

	}
	else{
        
	lr_end_transaction("事物", LR_FAIL);

	}

 

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值