文件名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) = '\0';
//保存参数
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",
"SelectAll=yes",
LAST);
NumOfReadbuf_3 = lr_xml_get_values("XML={readbuf_param}",
"ValueParam=add",
"Query=/employee/add",
"SelectAll=yes",
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}"));
分享到:
相关推荐
本文将深入解析如何利用LoadRunner读取XML文件中的数据,这是一个常见但重要的技术点,特别是在处理复杂的数据交互场景时。 ### 一、理解XML与LoadRunner XML(Extensible Markup Language)是一种用于标记数据的...
在LoadRunner中,我们可以使用数据文件(如CSV或数据库)来提供接口测试的输入参数,然后在Vuser脚本中读取这些数据,执行相应的接口调用,并验证返回结果。 具体步骤如下: 1. **创建数据源**:首先,我们需要...
3. **数据循环**:在性能测试中,我们往往需要多次迭代数据,FILE参数应能支持循环读取文件中的行或使用某种随机机制选择数据。 4. **参数化语法**:介绍如何在脚本中插入FILE参数,比如使用占位符或者特殊变量表示...
此功能涉及文件的读取、临时存储、文件大小检查、文件类型的限制等。Java的Servlet API可以用来处理文件上传。 3. **文件下载**:系统需要提供文件下载接口,允许用户按照文件ID或其他标识符获取文件。为了提高性能...
例如,文本文件可以使用文本编辑器,配置文件可能需要特定的应用程序或编程环境来读取和修改,而数据库文件则可能需要数据库管理工具。 在进行测试时,理解并正确配置这些测试属性至关重要,因为它们直接影响到测试...
通常情况下,非登录测试会将登录接口置于初始化(init)阶段,通过此步骤获取`sessionid`、`userid`等关键值,以便后续测试中使用。 - **作用域问题**: - **Cookie的作用域**:在JMeter中,Cookie的作用域被限制在...
MyBatis则是数据访问层的重要工具,它允许开发者在XML配置文件或注解中编写SQL语句,然后在Java代码中执行这些SQL,以实现CRUD(创建、读取、更新、删除)操作。通过MyBatis,可以轻松地管理SQL查询、存储过程,以及...
8. **Oracle 数据库组件**:Oracle 数据库的物理组件包括数据文件、恢复日志文件和控制文件,而不包括表空间文件,表空间是逻辑概念。 9. **软件测试对象**:测试对象包括源代码、目标代码、相关文档以及数据。 10...
8. Oracle 数据库的物理组件包括数据文件、恢复日志文件和控制文件,不包括 D)表空间文件,表空间是逻辑概念。 9. 软件测试的对象涵盖 B)源程序、目标程序、数据及相关文档。 10. 测试评估方法常见的是 B)专家...
Tomcat 通过配置 server.xml 文件中的 `<Engine>` 和 `<Cluster>` 元素来实现集群功能。 - **session 共享:** - 使用 APR 或 JDBC 来实现 session 的持久化存储。 - 例如: ```xml channelSendOptions="3" ...
在实际测试过程中,测试人员需要运用各种工具和方法,如LoadRunner中的MI Listener可以帮助定位问题并生成性能测试报告,Controller用于控制测试执行,而Analysis则用于分析测试结果。 【XML】 XML(可扩展标记语言...
2. WSDL(Web Service Description Language):用于定义Web Service接口的XML格式文件,描述服务的地址、操作和消息格式。 3. SOAP(Simple Object Access Protocol):用于交换结构化和类型化信息的协议,基于XML...
4. **MyBatis**:MyBatis是一个持久层框架,它允许开发者将SQL语句直接写在XML配置文件或Java注解中,简化了数据库操作。在秒杀系统中,MyBatis可以用于执行商品库存的扣减等数据库操作。 5. **Bootstrap**:这是一...
首先,我们需要了解Linux系统中的关键资源指标,包括CPU利用率、内存使用情况、磁盘I/O和网络带宽等。这些指标是衡量系统健康状况的核心要素。 1. **CPU利用率**:CPU是系统处理任务的核心,过高或不合理的CPU利用...
- **断言**:验证服务响应是否正确,通常使用JSON断言或XML断言。 #### 三、分布式压测 当并发用户数超过300时,建议采用分布式压测技术,通过多个JMeter服务器协同工作,提高测试的准确性和稳定性。 #### 四、...
例如,可以在server.xml文件中配置context元素的reloadable属性为true,以便于开发阶段快速测试更改效果。 #### 四、总结 性能测试是一个系统性的工程,涉及到工具的选择、外部环境的优化以及Tomcat本身的配置等多...
- 输入/输出流技术:掌握File类、InputStream/OutputStream类及其子类如FileInputStream/FileOutputStream等操作文件读写的方法。 - 多线程编程:理解Thread类和Runnable接口实现多任务并发执行机制。 #### 二、...
对于复杂的查询和分析,PostgreSQL还支持窗口函数、递归查询以及JSON和XML等非结构化数据的处理。 在“BD2-Postgres”项目中,性能测试可能包括了不同负载下的读写速度、并发处理能力、响应时间和资源消耗等方面。...
- **循环**:在脚本中使用循环结构,逐个验证数据表中的每一组数据。 #### 13. QTP中的Action有什么作用?有几种? QTP中的Action主要用于封装一组相关的操作,以便在不同的测试场景中重复使用。Action主要有两种...
4. **性能测试**:理解如何评估API的性能,包括并发请求处理能力、响应时间和资源消耗,可能使用工具如JMeter或LoadRunner。 以上就是"php-example"项目中的主要知识点,涵盖了PHP和MySQL的基础及应用,JavaScript...