博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

性能06篇-创建Web测试计划

Posted on 2017-03-04 23:33  测试梦工厂  阅读(212)  评论(0编辑  收藏  举报

 

创建一个简单的测试计划,用于测试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