大数跨境

八、创建网络测试计划(详解教程)

八、创建网络测试计划(详解教程) 慧测
2021-08-16
2
导读:关注性能小课,成长不止一点点1、简介 本篇将对如何创建基本的测试计划来对被测网站进行测试做简单学习。关于本篇

关注性能小课,成长不止一点点



1、简介

本篇将对如何创建基本的测试计划来对被测网站进行测试做简单学习。

关于本篇中所讲解实例的构建细节如下:

  • 创建五个虚拟用户,将这些虚拟用户的请求分别发送到JMeter所测网站的其中两个页面上。
  • 将测试执行两次。
  • 请求总数:(5个用户)x(2个请求)x(重复2次)=20个HTTP请求。

因此,要构建如上测试,所要用到的测试元件分别有:

  • 线程组
  • HTTP请求
  • HTTP请求默认值
  • 图形结果

1.1、添加用户

JMeter中,构建测试计划首先要添加一个线程组元件。线程组元件的作用是告诉JMeter要模拟的用户数量,以及所模拟的用户多久发送一次请求和应发送多少次请求。

通过鼠标右键单击“测试计划”以弹出“添加”菜单,然后选择“添加”→“线程组”,来添加ThreadGroup元件。

添加完成后,即可在“测试计划”下看到“线程组”元件。

接下来,在测试计划树中选择线程组元件可对其默认属性进行修改。在JMeter窗口中的右侧部分所看到的即是线程组“配置面板”。

由于线程组的名称(Name)是允许用户进行自定义的,所以为便于示例讲解,此处我们将新创建的线程组的名字自定义成“Test Virtual Users”。

然后:

  • 1、将用户数量(Number of Threads(users),在JMeter中我们称之为线程)设置为5。
  • 2、将加速周期(Ramp-up period(seconds)),保留其默认值1,即1秒。该属性主要用来告诉JMeter,在启动每个用户之间要延迟多长时间。例如,如果输入5,即5秒钟作为加速期,那么JMeter将会在5秒钟延迟后完成所有用户的启动。因此,如果我们有5个用户和5秒钟的加速期,则启动用户之间的延迟将为1秒(5个用户/ 5秒= 1个用户每秒)。如果将值设置为0,那么JMeter将立即启动所有用户。
  • 3、将循环计数(Loop Count)设置为2。该属性会告诉JMeter需要将测试重复多少次。如果设置为1,则JMeter将仅运行一次测试。假如需要JMeter对测试计划进行重复运行,则需勾选永久(Infinite)复选框。

小提示:● 在JMeter中,当用户对每一个元件的配置面板中的参数进行修改后,JMeter均会立即对修改后的参数进行应用。

1.2、添加默认的HTTP请求属性

在1.1节中主要讲到了如何对虚拟用户进行自定义设置,本节将会对虚拟用户将要执行的任务怎样设置进行讲解。

首先选择名为Test Virtual Users 的线程组元件,然后鼠标右键单击以弹出“添加”菜单,选择“添加”→“配置元件”→“ HTTP请求默认值”,添加完成后,选择该元件可以查看其配置面板。

在“HTTP请求默认值”的配置面板中也有一个可允许用户进行自定义修改的名称(Name)参数。在本篇讲解示例中,我们使用该参数所提供的默认值。

接下来,是Web服务器(Web Server)Tab页中的服务器名称/**IP(Server Name or IP)**参数。在所构建的测试计划中,所有的HTTP请求都将发送到用户所设置的服务器名称/IP。此处,以输入jmeter.apache.org这个域名为例。

以上即为本小节基于如何为HTTP请求设置默认值而分享的内容。在下一小节中,我们将会对添加其它的一些HTTP请求元件进行讲解。

1.3、添加Cookie支持

一般来说,Web测试基本都会用到Cookie支持(被测系统/程序明确不使用Cookie除外)。对于JMeter,其也是支持添加Cookie的,添加时,用户只需将名为HTTP Cookie Manager的元件添加到测试计划中指定的线程组即可。

被添加到指定线程组上的HTTP Cookie Manager元件,将会确保每个线程都有属于自己的Cookie,但其在所有HTTP Request对象之间,则是共享的。

鼠标右键单击名为Test Virtual Users 的线程组元件,然后从弹出的菜单中选择“添加”→“配置元件”→“HTTP Cookie Manager”,即可添加HTTP Cookie Manager元件。

1.4、添加HTTP请求

关于本篇所讲解实例所构建的测试计划中,我们将会对外发出的两个HTTP请求分别是:

  • 1、发往JMeter官网的主页(http://jmeter.apache.org/)的请求。
  • 2、发往JMeter官网下名为changes.html的页面(http://jmeter.apache.org/changes.html)的请求。

在实际执行测试时,JMeter将会按照它们在测试计划树中出现的顺序依次将请求发出。

添加步骤:

首先,将第一个HTTP请求添加到名为Test Virtual Users 的线程组元件(添加→采样器→HTTP请求)上。然后,在测试计划树中选中该元件并对以下属性进行编辑:

  • 1、将参数值名称(Name)的值更改为“JMeter HomePage”。
  • 2、将路径字段设置为“ /”。此处需要注意的是,由于已经在HTTP Request Defaults元件中指定了该值,故此处不必再对Server Name参数值进行设置。

接下来,添加第二个HTTP请求并对其以下属性进行编辑:

  • 1、将名称(Name)对应的参数值更改为“changes”。
  • 2、将路径(Path)对应的参数值设置为“/changes.html”。

1.5、添加监听器、查看存储测试结果

关于将要添加到测试计划中的最后一个元件是监听器(Listener)。该元件主要负责将HTTP请求所获取到的所有结果存储在文件中,并提供基于数据的可视化模型。

鼠标右键单击名为Test Virtual Users 的线程组元件,按照如下图所示步骤,即可将名为Graph Results的监听器添加到Test Virtual Users 线程组元件上。

1.6、关于登录类的网站

由于某些网站是需要用户先执行登录操作,然后才允许其进行后续某些操作的。所以被加载到浏览器中的网站,登录名和密码将显示为表单,而用于提交表单的登录按钮则用于生成POST请求,表单项的值将会作为POST请求的参数值进行传递。

所以,对于此种情况,要在JMeter中进行执行的话,需要在添加完HTTP请求后,将Http Request对应的方法设置为POST。关于表单中所使用的参数的名称以及请求所发往的目标页面,可以借助像浏览器中的F12、fiddler、JMeter Proxy Recorder等Web页面抓包工具,通过对登录页面中的代码进行检查来获取。

接下来是设置好登录按钮所对应的表单提交的目标路径。然后,单击添加(Add)按钮两次,将登录所需用户名和密码的详细信息填好。

此处需要注意的是,有时,登录表单可能会包含其它隐藏字段,这些字段也是需要添加的。

1.7、选择同一用户或不同用户

创建测试计划时,在每个线程组迭代中,用户可以选择模拟运行多个迭代的同一用户,或模拟运行一个迭代的不同用户。这两种模拟运行方式,用户可以在线程组元件上进行配置,通过配置,可使HTTP缓存管理器、HTTP Cookie管理器、HTTP授权管理器受此配置的控制。

小提示:● 在最新版本的JMeter中,已经没有这部分内容了,此处仅对其做回顾性简介。

另外,用户可以分别选择在Cookie Manager / Cache Manager / Authorization Manager中对Cookie/缓存内容/授权进行清除,也可以选择由线程组来控制。

小结

本篇关于创建网络测试计划的分享到此结束,下篇分享会跟大家一起做一次实战,同时,会对高级网络测试计划的创建进行讲解。

END

免费技术支持微信:15712862196

咨询QQ:2657535456

咨询微信号:huice666

慧测公众号



【声明】内容源于网络
0
0
慧测
专注人工智能前沿技术落地企业实战应用
内容 404
粉丝 0
慧测 专注人工智能前沿技术落地企业实战应用
总阅读104
粉丝0
内容404