loadrunner 学习笔记--AJAX(转)

用loadrunner测试WEB程序的时候总是会碰到AJAX或者ActiveX实现的功能,而通常这些功能会包含很多客户端函数(一般为JavaScript)。我们该如何处理?如果从功能实现的角度去考虑这个问题,就会走入一个死胡同,因为loadrunner对于JavaScript是无能为力的。如果从loadrunner的本质出发,那么该问题就迎刃而解。因为loadrunner是基于协议来测试的,不管AJAX或者ActiveX在客户端做了多少事情,只要它最后是通过HTTP协议来发送请求的,我们模拟这个请求就可以完成测试。接下来就分析一下如何处理这类问题,以电子病历BS版医嘱录入为例(医嘱录入部分使用了ActiveX技术和AJAX技术)。

1、录制脚本,分析脚本。

 

2、调试脚本。发现脚本能回放成功,但是数据没有提交。此时我们需要查看录制时HTTP请求是什么样的。  

 

 

3、修改脚本。我们需要在上图脚本中,在web_custom_request()函数前增加web_add_header("x-ajaxpro-method","SaveOrder");,我们再次回放时,数据就可以写入了。

其实我们用loadrunner来测试时,更多的要从协议的角度来考虑问题,而非编程角度。

时间: 2024-11-05 11:55:42

loadrunner 学习笔记--AJAX(转)的相关文章

loadrunner 学习笔记--AJAX

用loadrunner测试WEB程序的时候总是会碰到AJAX或者ActiveX实现的功能,而通常这些功能会包含很多客户端函数(一般为JavaScript).我们该如何处理?如果从功能实现的角度去考虑这个问题,就会走入一个死胡同,因为loadrunner对于JavaScript是无能为力的.如果从loadrunner的本质出发,那么该问题就迎刃而解.因为loadrunner是基于协议来测试的,不管AJAX或者ActiveX在客户端做了多少事情,只要它最后是通过HTTP协议来发送请求的,我们模拟这个

LoadRunner学习笔记--未经排版

LoadRunner学习笔记 并发用户数量: 与服务器进行交互的在线用户数量 请求响应时间 从客户端发送请求到得到整个响应的时间 一般包括网络响应时间+server的响应时间 事务相应时间 完成这个事务所用的时间 是性能测试中重点关注的指标 吞吐率 单位时间在网络上传输的数据量(吞吐量:网络上传输的数据总量) 指从server返回客户端的 是衡量网络性能的主要指标 TPS 每秒钟系统能够处理事务的数量 点击率 每秒发送的HTTP请求的数量 点击率越大对server的压力也就越大 资源利用率 对不

软件测试之loadrunner学习笔记-02集合点

loadrunner学习笔记-02集合点 集合点函数可以帮助我们生成有效可控的并发操作.虽然在Controller中多用户负载的Vuser是一起开始运行脚本的,但是由于计算机的串行处理机制,脚本的运行随着时间的推移,并不能完全达到同步.这个时候需要手工的方式让用户在同一时间点上进行操作来测试系统并发处理的能力,而集合点函数就能实现这个功能. 可通过将集合点插入到 Vuser 脚本来指定会合位置.在 Vuser 执行脚本并遇到集合点时,脚本将暂停执行,Vuser 将等待 Controller 或控

[ajax 学习笔记] ajax 的服务器响应

在上一篇[ajax 学习笔记] ajax初试中,简单了解了一下ajax. 我是参考AJAX详解.chm学习的,资源已上传.参考链接:Ajax 专题 今天又学习了ajax中关于服务器响应的一些知识. ajax中服务器的响应是通过响应函数将服务器返回的数据呈现到页面的.服务器的响应体现在服务器响应回调函数中. 在上一篇的例子中,响应函数为: function updatePage(){ if(xmlHttp.readyState == 4){ //http就绪状态 if(xmlHttp.status

原生js学习笔记——Ajax基础

1.什么是Ajax Ajax:是Asynchronous Javascript And XML的简写,即异步JavaScript和XML XMLHttpRequest 提供的异步,是指基于 ajax 的应用在服务器中的通信方式. 传统的 web 应用,每次用户向服务器请求获得新数据时,浏览器都会丢弃当前页面,而等待重新加载新的页面.这样一来,在服务器完全响应之前,用户浏览器将一片空白,用户的动作必须中断.而异步指用户发送请求后,完全无需等待,请求会在后台发送,不会阻塞用户当前活动.这样一来,用户

20151210 Jquery 学习笔记 AJAX 进阶

一.加载请求 在 Ajax 异步发送请求时,遇到网速较慢的情况,就会出现请求时间较长的问题.而超 过一定时间的请求,用户就会变得不再耐烦而关闭页面.而如果在请求期间能给用户一些提 示,比如:正在努力加载中...,那么相同的请求时间会让用户体验更加的好一些. jQuery 提供了两个全局事件,.ajaxStart()和.ajaxStop().这两个全局事件,只要用户触发 了 Ajax,请求开始时(未完成其他请求)激活.ajaxStart(),请求结束时(所有请求都结束了) 激活.ajaxStop(

20151205 jquery 学习笔记--Ajax

Ajax全称为:“Asynchronous JavaScript and XML”(异步 JavaScript 和 XML), 它并不是 JavaScript 的一种单一技术,而是利用了一系列交互式网页应用相关的技术所形 成的结合体.使用 Ajax,我们可以无刷新状态更新页面,并且实现异步提交,提升了用户 体验. 一.Ajax 概述 Ajax 这个概念是由 JesseJamesGarrett 在 2005 年发明的.它本身不是单一技术,是一串 技术的集合,主要有: 1.JavaScript,通过

LoadRunner 学习笔记(3)基础

LoadRunner包含的组件: Virtual User Generator 录制最终用户业务流程并创建自动化性能测试脚本,即 Vuser 脚本 Controller 组织.驱动.管理并监控负载测试 Load Generator 通过运行 Vuser 产生负载 Analysis 用于查看.剖析和比较性能结果 Launcher 使你可以从单个访问点访问所有LoadRunner组件 LoadRunner 术语 场景:场景文件根据性能要求定义每次测试期间发生的事 Vuser:在场景中,LoadRun

LoadRunner 学习笔记(2)VuGen运行时设置Run-Time Setting

定义:在Vugen中Run-Time Setting是用来设置脚本运行时所需要的相关选项 注:一般情况下,我们会接触到 Run Logic.Log.Think Time,其他的设置项基本上保持默认设置,特殊项目特殊对待. General  1.Run Logic 运行逻辑,用来设置Action部分重复运行几次 脚本如何运行的,每个action和action之间运行的先后顺序就是在这里设置的 Number of Iterations   只为Run上设置迭代次数(运行的次数),不为Init,End