【转】Jmeter(三)-简单的HTTP请求(非录制)

首先建立一个线程组(Thread Group),为什么所有的请求都要加入线程组这个组件呢?不加不行吗?答案当然是不行的。因为jmeter的所有任务都必须由线程处理,所有任务都必须在线程组下面创建。

选中线程组(Thread Group),鼠标右键添加HTTP Request。这里不需要cookie管理器(HTTP Cookie Manager),因为这是我们手动添加的请求,不是录制的,但要求不是严格,cookie管理器可加也可不加。

我这里有2个请求

[全国]0727测试BD信息快递产品01变更03

http://p.ftuan.com/mall_quanguo_14448.shtml?s=1000&a=00011033008051010100000000010103

[海淀学院路]0727测试BD信息F券产品02

http://p.ftuan.com/xiuxian_haidian_14447.shtml?s=1000&a=00010244004076010100000000110103

先添加第一个请求,第二个请求我使用参数化URL的方法来进行(试试在path中参数化能不能成功,分析了上面2个请求,域名都是相同的,唯独不同的只有后面的URL)

然后添加聚合报告(Aggregate Report)和查看结果树(View Results Tree)

完整的脚本结构:

很简洁吧

保存脚本,然后运行一下,看看我们发过去的请求是否可以得到服务器相应的返回数据。

第一个请求的URL:

发送URL请求后的返回:

一切返回正确。

下面来参数化另外一个页面的URL请求:

把域名后面的URL放到一个记事本中,另存为URL.txt,存放在D盘根目录

选中线程组,在其下面添加配置元件CSV Data Set Config

参数化的方法在另外一个文档中。

然后根据CSV Data Set Config中的变量名称,找到HTTP请求中的path数据

修改线程组运行次数,确保这2个URL都要被线程执行到

运行脚本前,先把前一次运行的结果清空一下

开始运行脚本

这两个URL都被执行到了,并且结果返回正确,测试可知在http请求的path路径上做参数化是可行的。

再看一下脚本的结构树:且要记住一点,所有任务都是由线程来执行的,所以所有任务都要分在线程下面,一个脚本个建立多个线程组。

时间: 2024-12-20 10:36:13

【转】Jmeter(三)-简单的HTTP请求(非录制)的相关文章

jmeter(3)简单的HTTP请求(非录制)

一.HTTP Request Defaults的作用: 该组件可以为我们的http请求设置默认的值.假如,我们创建一个测试计划有很多个请求且都是发送到相同的server,这时我们只需添加一个Http request defaults组件并设置“Server Name or IP”,然后添加多个http请求且不设置"server name or ip",这些http请求会默认使用Http request defaults组件设置的值. 参数列表: Attribute Descriptio

Xamarin.Android之封装个简单的网络请求类

一.前言 回忆到上篇 <Xamarin.Android再体验之简单的登录Demo> 做登录时,用的是GET的请求,还用的是同步, 于是现在将其简单的改写,做了个简单的封装,包含基于HttpClient和HttpWebRequest两种方式的封装. 由于对这一块还不是很熟悉,所以可能不是很严谨. 二.先上封装好的代码 1 using System; 2 using System.Collections.Generic; 3 using System.IO; 4 using System.Json

观察HTTP协议中客户端向服务器发送的请求,理解并实现一个最简单的AJAX请求案例

一.什么是HTTP协议 HTTP协议即超文本传输协议,网站就是基于HTTP协议的,例如网站的图片.CSS.JS等都是基于HTTP协议进行传输的.HTTP协议是由从客户机到服务器的请求(Request)和从服务器到客户机的响应(Response)进行了约束和规范. 大白话的说,就是你在浏览器输入一个网址,例如http://baidu.com,这时你就是向百度的服务器发送了请求了....经过一系列你看不到的处理之后,你的浏览器出现一个百度的首页,这就是百度的服务器对你的浏览器的成功的响应. 二.在浏

Ajax打开三种页面的请求

xmlhttprequest对象可以打开两种方式的页面请求 1,.asmx格式的webservice页面. 2,.aspx格式的web窗体 其中web窗体可以是调用一新建的web窗体,同时调用和被调用页面可以是同一个页面,表达的可能不够清楚,还是看示例吧. 一.调用.asmx格式的webservice页面 1,新建一个ASP.NET应用程序,在该应用程序中添加一web服务页面(webservice页面),此时项目中有三个页面,web窗体页面(Default.aspx).webservice页面(

上海岳城科技一个简单的Ajax请求例子

Ajax不是一种新的编程语言,而是一种用于创建更好更快以及交互性更强的Web应用程序的技术.通过Ajax,您可以使用 JavaScript的XMLHttpRequest对象来直接与服务器进行通信.您可以在不重载页面的情况与 Web 服务器交换数据.在本文的例子中,我们将演示当用户向一个标准的HTML表单中输入数据时网页如何与web服务器进行通信. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &quo

加壳学习笔记(三)-简单的脱壳思路&amp;调试思路

首先一些windows的常用API: GetWindowTextA:以ASCII的形式的输入框 GetWindowTextW:以Unicaode宽字符的输入框 GetDlgItemTextA:以ASCII的形式的输入框 GetDlgItemTextW:以Unicaode宽字符的输入框 这些函数在使用的时候会有些参数提前入栈,如这函数要求的参数是字符串数目.还有大小写啦之类的东西,这些东西是要在调用该函数之前入栈,也就是依次push,就是说一般前面几个push接着一个call,那前面的push可能

用TCP发送几个简单的http请求

使用TCP调试小助手或者是telnet即可,他们都让你站在tcp这个巨人的肩膀上. 最简单的http请求,莫过于: GET / HTTP/1.1Host: www.baidu.com 注意最后要加两个空行,才表示一个完整的http请求,第一个空行用来标识head和body之间的分隔,第二个空行表明body为空. 也可以加上其他head域,如:Referer: http://hongchangfirst/ 响应可以为: HTTP/1.1 200 OKServer: nginx/0.7.68Date

web三种跨域请求数据方法

web三种跨域请求数据方法 以下测试代码使用php,浏览器测试使用IE9,chrome,firefox,safari <!DOCTYPE HTML> <html> <head> <meta charset="UTF-8"> <script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.7.2.min.

利用java servlet实现简单的web请求过滤和跳转

今日有两个微信web项目合并了,但是还有些链接指向废弃的项目,另外不想在服务器上运行两份相同web项目(1.影响性能.2.维护升级容易出错),因此决定写一个简单链接跳转的项目,spring的filter过滤器可以实现,但想想spring干这个有点大材小用,想到java的servlet可以支持通配符,因此用servlet写了一个简单的跳转程序,总共花了不到一小时的时间.废话少说上代码: 1 /** 2 * Servlet implementation class Default 3 */ 4 @W