加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

loadrunner读取xml例子

发布时间:2020-12-16 09:37:27 所属栏目:百科 来源:网络整理
导读:转自: http://blog.163.com/shiwanli1978@126/blog/static/35094448201122931411684/ 文件名test.xml,保存在D盘根目录下,内容为: employee id123/id nametom/name addbeijing/add age20/age /employee loadrunner中的代码如下: long fp; int total = 0; i
转自: http://blog.163.com/shiwanli1978@126/blog/static/35094448201122931411684/
文件名test.xml,保存在D盘根目录下,内容为:
<employee>
<id>123</id>
<name>tom</name>
<add>beijing</add>
<age>20</age>
</employee>

loadrunner中的代码如下:

long fp;

int total = 0;
int readbufsize = 0;
int count = 0;
int i = 0;
int NumOfReadbuf_1 = 0;
int NumOfReadbuf_2 = 0;
int NumOfReadbuf_3 = 0;
int NumOfReadbuf_4 = 0;

char *readbuf;
char *file = "D:test.xml";

//读取XML文件
if ( (fp = fopen(file,"r")) == NULL)
{
lr_message("open logfile failed!n");
return -1;
}

//申请 readbuf

readbuf = (char*) calloc(50,sizeof(char));
if (readbuf == NULL)
{
lr_message("Insufficient memory available");
return -1;
}

//循环读取文件
while(!feof(fp))
{
// 扩展缓冲区
if( readbufsize - total <= 10 )
{
readbufsize += 50;
readbuf = (char*) realloc(readbuf,readbufsize);
}

count = fread(readbuf + total,sizeof(char),10,fp);

total += count;
}

//关闭文件句柄
fclose(fp);

//修改readbuf内存值
readbuf = (char*) realloc(readbuf,readbufsize+1);
*(readbuf+total) = '';

//保存参数
lr_save_string(readbuf,"readbuf_param");

//读取记录
NumOfReadbuf_1 = lr_xml_get_values("XML={readbuf_param}",
"ValueParam=id",
"Query=/employee/id",
"SelectAll=yes",
LAST);

NumOfReadbuf_2 = lr_xml_get_values("XML={readbuf_param}",
"ValueParam=name",
"Query=/employee/name",
LAST);

NumOfReadbuf_3 = lr_xml_get_values("XML={readbuf_param}",
"ValueParam=add",
"Query=/employee/add",
LAST);

NumOfReadbuf_4 = lr_xml_get_values("XML={readbuf_param}","ValueParam=age","Query=/employee/age","SelectAll=yes",LAST); //输出结果 lr_log_message("%s",lr_eval_string("{id_1}")); lr_log_message("%s",lr_eval_string("{name_1}")); lr_log_message("%s",lr_eval_string("{add_1}")); lr_log_message("%s",lr_eval_string("{age_1}"));

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读