zoukankan      html  css  js  c++  java
  • 性能06篇-创建Web测试计划

    创建一个简单的测试计划,用于测试Web站点。模拟5个并发用户,对Jakarta Web站点的两个页面进行访问。另外,每个并发用户都会运行测试两次。因此测试计划产生的总请求数目为(5并发用户)*(2请求)*(重复复2次)=20HTTP请求。要构建该测试计划,测试人员需要用到如下测试元件:线程组(Thread Group)、HTTP请求(HTTP Request)、HTTP请求默认值(HTTP Request Defaults)和图形结果(Graph Results)。

    1、添加并发用户

    创建JMeter测试计划的第一步就是添加线程组测试元件。线程组会告诉JMeter需要模拟的并发用户数,以及并发用户发送请求的频率和数目。

    要添加线程组,首先选中测试计划,接着单机鼠标右键,在弹出的快捷菜单中选择“Add”-“Threads(Users)”-“ThreadGroup”命令。测试人员现在就应该能够在测试计划下看到线程组。如果没有看到,单击测试计划以便展开测试计划数。

    接下来,测试人员需要修改线程组的默认设置。在测试数中选中线程组后,测试人员应该能够在JMeter窗口的右半部分看到线程组的控制面板。

    首先为线程组起一个有意义的名字,在名称域中输入Users,接着设置线程数为5。保持Ramp-Up Period的值不变(为1秒),这一设置会告诉JMeter启动并发用户的时间间隔。例如,如果测试人员把Ramp-Up Period设置为5秒,那么JMeter会在5秒内将所有并发用户启动起来。因此假设我们有5个并发用户和5秒的Ramp-Up Period,那么启动并发用户的时间间隔为1秒(5并发用户/5秒=1用户每秒)。如果测试人员将该值设为0,那么JMeter会立刻启动所有的并发用户。

    最后在循环次数(Loop Count)中输入2,这一属性会告诉JMeter重复测试多少次。如果测试人员设置的循环次数为1,那么JMeter只会运行测试一遍。要让JMeter不断运行测试计划,可选中“(Forever)永远”复选框。

    2、添加默认HTTP请求属性

    现在已经定义了并发用户数,下一步需定义并发用户需要进行的操作了。在这里,测试人员将学会如何设定HTTP请求的默认值。

    首先从选中Users(线程组)测试元件开始。单机鼠标右键,在弹出的快捷菜单中选择“Add”-“Config Element”-“HTTP Request Defaults”命令。接下来选中这个新测试元件,查看它的控制面板。

    像大多数JMeter测试元件一样,HTTP请求默认值也有对应的控制面板。其中服务器名称或IP需要设置,对于当前正在构建的这个测试计划,所有请求都会发往jakarta.apache.org,因此测试人员需要讲其放在该设置域中。

    HTTP请求默认值不会让JMeter去发送HTTP请求,它只是定义了HTTP请求使用到的默认值。

    3、添加对Cookie的支持

    通常所有Web测试都要支持Cookie,除非测试人员的应用系统很特别,不使用Cookie。要添加对Cookie的支持,只需要为测试计划中的每一个线程组添加一个HTTP Cookie管理器。这样一来,每一个测试线程都会拥有独立的Cookie,但是这些Cookie会在HTTP请求对象间共享。

    要添加HTTP Cookie管理器,只需简单的选中线程组,接着选择“Add”-“Config Element”-“HTTP Cookie Manager”命令。

    4、添加HTTP请求

    在测试计划中,需要发送两个HTTP请求。第一个请求针对Jakarta主页(http://jakarta.apache.org/),而第二个请求针对项目知道页面(http://jakarta.apache.org/site/guidelines.html).

    JMeter会按照它们在测试数中出现的顺序发送请求。

    首先为线程组添加一个HTTP请求(Add-Sampler-HTTP Request)。接着在测试树中选中该HTTP请求,并编辑其属性。

    1)、将名称改为“Home Page”。

    2)、将路径(Path)改为“/”。此处不需要设定Server Name,原因在于测试人员已经在HTTP请求默认值中设定了默认值。

    接下来,添加第二个HTTP请求,并编辑其属性。

    1)、将名称(Name)改为“Project Guidelines”。

    2)、将路径(Path)设置为“/site/guidelines.html”.

    5、添加监听器用于查看/存储测试结果

    测试人员为测试计划添加的最后一个测试元件就是监听器。该测试元件负责将所有HTTP请求的结果存储在一个文件中,并以可视化的模型加以展示。

    选中线程组,并添加一个图形结果监听器(Add-Listense-Graph Results)。接下来,测试人员需要指明保存测试结果的目录和文件名。测试人员既可以在filename文件名输入域中填写。也可以通过单击Browse浏览按钮来选择一个文件。

    6、登录Web站点

    在上面描述的测试计划中不涉及登录,但是有些Web站点要求在执行特定操作前必须先登录。在Web浏览器中,登录界面通过就是一个表单(Form),其中有用户名和密码的输入域,以及提交表单(Form)会用到的按钮。该按钮会产生一个POST请求,并将表单中的元素作为参数。

    要使用JMeter完成登录,测试人员需要添加一个HTTP请求,并将方法设定为POST。测试人员需要知道表单使用的输入域名称和目标页面。所有这些信息都可以通过查看登录页面的代码来获取。如果这一点很难做到,测试人员可以使用JMeter代理录制(JMeter Proxy Recorder)来实现。将目标页面设置为提交按钮所在的页面。另外还需要单机“Add”按钮两次,增加用户名和密码。有些时候登录表单中还包含一些隐藏信息,它们也需要在这里添加。


            长按二维码识别关注,您的支持是我们最大的动力。       

            公众号:测试梦工厂

            QQ一群:300897805

      

  • 相关阅读:
    【Swift】UILabel 设置内边距
    Swift泛型定义 同时限定T的类(class)和多协议(protocol)
    Flutter如何引用第三方库并使用
    Swift
    【iOS】Swift4.0 GCD的使用笔记
    swift中数据之间的转换
    Python之路【第五篇】:面向对象及相关
    rabbitmq pika connection closed
    python
    rabbitMQ实战(一)---------使用pika库实现hello world
  • 原文地址:https://www.cnblogs.com/testdream/p/6503247.html
Copyright © 2011-2022 走看看