Jmeter入门二—–jmeter简介及一个web登录的例子

Jmeter包含四个部分:

(1) 负载发生器:用于产生负载,通常以多线程或是多进程的方式模拟用户行为。

(2) 用户运行器:通常是一个脚本运行引擎,用户运行器附加在线程或进程上,根据脚本要求模拟指定的用户行为。

(3) 资源生成器:用于生成测试过程中服务器,负载机的资源数据。

(4) 报表生成器:根据测试中获得的数生成报表,提供可视化的数据显示方式。

测试计划元件:

Test Plan(测试计划):用来描述一个性能测试,包含与本次性能测试所有相关的功能。也就是说本次的性能测试是基于一个计划的。

Threads Users线程用户:这个就是我们通常添加运行的线程。通俗的讲一个线程组,可以看做一个虚拟用户组,线程组中的每个线程都可以理解为一个虚拟用户。线程组中包含的线程数量在测试执行过程中不会发生改变的。

测试片段(Test Fragment):测试片段元件是控制器上的一个特殊的线程组,它在测试树上与线程组处于一个层级。它与线程组有所不同,因为它不会被执行,除非它是一个模块控制器或者是被控制器所引用时才会被执行。

控制器:Jmeter有两种类型的控制器:取样器(sample)和逻辑控制器(Logic Controller),用这些原件来驱动一个测试。

Building a web Test Plan

100用户*2request*1次=200个http请求

要建立这个测试计划,你需要用到下面的元素:

Thread Group(线程组)

Http Request(http请求)

Http Request Defaults(http默认请求)

Graph Results(曲线图结果)

一:Adding Users

第一步添加线程组,这也是Jmeter每一个测试必须的,线程组告诉Jmeter你想模拟多少用户,发送请求的频率和他们应该发送多少请求。

下一步,你需要修改默认值:

1. 给线程组提供一个描述性的名称。例如:jmeter users

2. 增加用户的数量。(称为线程数)。输入100

3. 下一个输入框,Ramp-Up period(增强,爬坡期),默认值为1s,改为10s。Jmeter将在10s内启动你所有的用户进程。所以如果我们有100个用户,且设置Ramp-up时间为10s,那么启动每个用户的延长时间为(100users/10s=10users per second)0.1s。如果你设置爬坡时间为0,那么Jmeter会立刻启动你所有的用户进程。

4. 最后,保持循环次数为默认值1.这项告诉Jmeter重复你的测试多少次。如果你输入1,将执行一次测试,想让Jmeter不停地执行测试,勾上永远选项。

第二步:Adding Default HTTP Request Properties

现在我们来定义我们的用户,是时候来定义他们将要执行的任务了。本小节,将会详细的说明HTTP Requests的默认设置。下一节,你将会增加Http Request元素,会用到你在此处定义的默认配置。

添加一个HTTP请求默认值

二:Adding cookie support

几乎所有的web测试都需要用到cookie的支持,除非你的程序明确的没有用到cookies。增加cookies的支持,仅需要在你的测试计划的每个进程组增加一个HTTP cookie Manager。

选择Thread Group-àconfig ElementàHttp Cookie Manage

三.Adding HTTP Request

在测试计划里,我们需要建立两个HTTP Requests。

HTTP请求1 http://gps123.sinaapp.com/wp-login.php

在添加一个HTTP 请求2 ,包含登录post的所有参数。

之所以会提交两个HTTP请求,是为了在HTTP请求1的时候获取cookie的这个参数:wordpress_test_cookie=WP+Cookie+check存放到HTTP Cookie管理器里面。(你只需要添加HTTP Cookie管理器,J
meter会自动添加,无须手动添加。)

四.Adding a Listener to view store the Test Results

最后,你需要给测试计划增加一个监听,这个元件是把你的HTTP Request结果保存成一个文件或者以图表的形式展示。

可以通过响应的数据,判断请求(登录)是否成功。

还可以添加其他的监听器,根据实际情况来添加。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注