利用LoadRunner进行http接口功能自动化测试

自动化测试脚本设计总体流程如下图:



需要取得的输入应预先制作了CSV文件,关在脚本参数配置中定义变量。

自动化测试程序关键代码

1、生成结果文件(html格式),文件名称为 test _系统时间(%Y%m%d%H%M%S)_虚拟用户编号,并写入测试结果文件的html开始标识

CODE:

//定义结果文件变量

long file;

//定义文件名种子(虚拟用户编号)变量

char *vusernum;

//定义测试结果变量

char V_Result[1024];

vuser_init()

{

//取得文件名种子(虚拟用户编号)

vusernum=lr_eval_string ("_{vuserid}");

//取得文件种子(系统时间)

lr_save_datetime("%Y%m%d%H%M%S", DATE_NOW, "now_date");

//拼结测试结果文件名称

strcpy(V_Result,"d://test/Result/test");

strcat(V_Result,lr_eval_string("_{now_date}"));

strcat(V_Result,vusernum);

strcat(V_Result,".html");

//生成并打开测试结果文件

file=fopen(V_Result,"at+");

//写入测试文件头部html信息

strcpy(V_Result,"<html><table border='1'><tr>< td>IMSI号码</td><td>预期值</td><td>返回值< /td><td>结果</td></tr>");

fputs(V_Result,file);

return 0;

}2、从参数化文件读取测试参数和预期结果、发送请求并获得服务器返回实际结果,比较测试结果后写入测试结果文件。

CODE:

Action()

{

//测试结果文本

char V_testres[1024];

//定义返回结果是否正确变量

int result;

//取得IMSI号码

char *V_imsi=lr_eval_string ("{IMSI}");

//设置页面接收最大的字节数,该设置应大于服务器返回内容的大小

web_set_max_html_param_len("20000");

//取得服务器返回内容

web_reg_save_param("filecontent",

"LB=",

"RB=",

"Search=Body",

LAST);

//发送请求

web_submit_data("login",

"Action=http://host:port/autonavit/search?cmd=clientlogin&termver=5&termcode=30001&termdbver=3 ",

"Method=POST",

"RecContentType=text/html",

"Referer=",

"Snapshot=t9.inf",

"Mode=HTTP",

ITEMDATA,

"Name=imsi", "Value={IMSI}", ENDITEM,

LAST);

//比较预期值和实际值是否相等

result=strcmp(lr_eval_string("{YQJG}"),lr_eval_string("{filecontent}"));

if ( result == 0 )

{

strcpy(V_testres,"通过");

}

else

{

strcpy(V_testres,"失败");

}

strcpy(V_Result,"<tr><td>");

//写入测试参数

strcat(V_Result,V_imsi);

strcat(V_Result,"</td>");

strcat(V_Result,"<td id='yq'>");

//写入预期结果

strcat(V_Result,lr_eval_string("{YQJG}"));

strcat(V_Result,"</td>");

strcat(V_Result,"<td id='sj'>");

//写入实际结果

strcat(V_Result,lr_eval_string("{filecontent}"));

strcat(V_Result,"</td>");

strcat(V_Result,"<td>");

//写入测试是否通过

strcat(V_Result, V_testres);

strcat(V_Result,"</td></tr>");

fputs(V_Result,file);

return 0;

}3、写入测试结果文件尾部html信息,关闭文件并结束测试。

CODE:

vuser_end()

{

//结束并关闭文件

strcpy(V_Result,"</table></html>");

fputs(V_Result,file);

fclose(file);

return 0;

}

(0)

相关推荐

  • 如何利用Excel2010的"切片器"功能查看透视表中明细数据不切换筛选或工作表方法

    利用Excel2010的“切片器”功能,你可以快捷查看数据透视表中的某项明细数据,而不用切换工作表或进行筛选操作。 1、启动Excel2010,打开相应的工作簿文档。 2、选中数据透视表中任意一个单元 ...

  • 利用win10系统"疑难解答"功能处理系统故障的方法

    win10系统与其他系统不同之处在于:win10系统自带了很多可以解除故障的功能,比如之前我们了解到的一键重置系统功能.今天小编就为大家分享一下利用win10系统"疑难解答"功能解 ...

  • 如何利用注册表编辑器查找功能快速定位注册表项?

    当我们针对注册表编辑器进行相关操作时,里面密密麻麻的各种注册表项和键值实在让人头疼,那么有没有简单的方法让我们快速查找和定位注册表项呢?比如我们的首页被篡改成hao123,删除注册表是彻底有效的方法, ...

  • 如何利用手机上的NFC功能复制公交卡

    现在很多手机都有NFC功能,NFC的功能在我们的日常生活中还是非常有用的,今天就跟大家介绍一下如何利用手机上的NFC功能复制公交卡的具体操作步骤.1. 解锁手机后,找到桌面上的"设置&quo ...

  • 如何利用手机上的NFC功能复制门禁卡

    现在很多手机都有NFC功能,NFC的功能在我们的日常生活中还是非常有用的,今天就跟大家介绍一下如何利用手机上的NFC功能复制门禁卡的具体操作步骤.1. 解锁手机后,找到桌面上的"设置&quo ...

  • 怎么利用PR中的提升功能将某一小段素材删除

    今天给大家介绍一下怎么利用PR中的提升功能将某一小段素材删除的具体操作步骤.1. 首先打开电脑,找到桌面上的pr软件,双击打开.2. 然后在打开的页面,选择新建项目,导入素材,并创建序列3. 然后在想 ...

  • 利用Word的套打功能批量填写结婚请柬

    5月是一年中结婚的高峰期.而婚礼邀请友人参加,就需要写请柬.而且写请柬不但要求字写得端正,还不能有错别字,再加上邀请的朋友多,写请柬就是一个劳累活.这时我们利用word的套打功能,就会让写请柬的事情变 ...

  • 利用Word2007检查文档功能,删除文件中的格式

    利用Word2007检查文档功能可以快速帮助我们删除文档中格式,例如:批注.修订.版本.注释.文档信息.自定义XML数据.页眉和页脚.水印.隐藏文字等格式,都可以利用文档检测功能快速全部清除.下面就一 ...

  • 利用win7的离线下载功能实现进入休眠状态也能下载

    离线下载,即利用服务器“替”用户的电脑下载的方式。具高速、不用挂机的优点而颇受欢迎。 大家在使用win7下载的过程中,肯定会遇到这样的一个问题,如果你长时间不动电脑,win7会自动休眠,然后下载进程也 ...