JMeter中级篇-8-网站性能测试用例1设计

       前面我们学会了如何获取录制web的脚本,如何写一个基本的测试用例,除了基本篇倒数第二篇,简单介绍了下设置负载场景,其实并没有太详细去介绍如何根据一个性能测试场景去设计性能测试用例,接下来三篇,我想从一个简单的场景开始,逐步增加一点难度,来学习三个场景的性能测试分析和设计用例过程。

 

网站性能测试案例1:

1.用户人数5人,并且所有用户同时点击服务器

2.用户分别访问3个页面

3.开始打开每个页面之前,我们需要设置一些等待时间(思考时间)

4.服务器的URL不能写死,要考虑测试环境,准生产环境和线上环境通用

5.生成图表和表格报告。

 

       这个5个用户并发的性能测试场景大概就是由上面几个条件组成,通过上面几个条件,我们要学会如何在JMeter里面找到对应的设置点,如何组装成一个性能测试用例。下面,我们逐步分析没一个条件,并在JMeter上做出对应的设计。

 

设置并发用户数

 

      我们先打开JMeter, 新建一个线程组,并发用户就是在线程组的界面设置。第一个条件就是5个并发用户,所以我们在线程数这里填写5,然后条件是,5个用户同时点击服务器,所以我们在红圈第二个条件设置为1秒,意思就是在第一秒开始,5个用户就同时处于并发状态,没有阶梯式的访问服务器。循环次数,我们暂时不变。

JMeter中级篇-8-网站性能测试用例1设计

 

访问三个页面

 

      这里我们用我个人csdn博客上三个不同页面举例。所以,我们需要先添加三个http请求的sampler,并填写相关参数。这里我们暂时就不用录制三个页面的访问的脚本,毕竟只有三个页面的请求,没必要大材小用,直接写HTTP请求就好。

 

第一个页面是我个人博客的首页

JMeter中级篇-8-网站性能测试用例1设计

Java+Selenium设计系列链接

JMeter中级篇-8-网站性能测试用例1设计

Python+Java设计系列请求如下

JMeter中级篇-8-网站性能测试用例1设计

 

如果你担心你填写不对,你可以添加一个察看结果树,先测试一下是否请求成功。这里我就先不添加,后面部分来添加。

 

设置思考时间

 

       场景要求,每个页面进入之前需要有一些时间等待。说到时间等待,我们是不是里面要想到定时器这个组件。我们大致要设计的请求过程是,第一个直接打开首页,这个不用设置定时器,只需要把定时器设置在Java+Selenium这个请求下和Python+Selenium请求下。

JMeter中级篇-8-网站性能测试用例1设计

       两个都添加一个3秒的等待,这里解释一下,我在Selenium_Python这个请求下添加了一个三秒的定时器,意思是,在触发Selenium_Python这个请求之前,先执行等待3秒,然后执行这个HTTP请求。

 

服务器地址管理

 

      服务器地址管理,在测试里面经常会提到,这个建议不要写死。我们设计一个用例,当然希望是能够在所有的环境里执行,例如测试环境,准生产环境和线上生产环境。我们可能回想到把服务器URL写成一个变量,当然这没问题,接下来我们使用配置元件下有一个HTTP默认请求来解决这个问题。

JMeter中级篇-8-网站性能测试用例1设计

我们在默认请求中填写公共的地址部分和请求协议,这样其他请求就不需要填写服务器地址。

JMeter中级篇-8-网站性能测试用例1设计

第一个csdn首页请求修改如下

JMeter中级篇-8-网站性能测试用例1设计

注意红圈地方是有变化的。

然后其他两个请求分别如下。

JMeter中级篇-8-网站性能测试用例1设计

JMeter中级篇-8-网站性能测试用例1设计

 

报告生成

 

这里我们可以勾选察看结果树报告和图表和聚合报告。

JMeter中级篇-8-网站性能测试用例1设计

 

测试运行和查看结果

 

       由于我们只有5*3,15个样本,所以有些报告数据太少不好看。不过没关系,我们只是学习这个过程,或者你可以在线线程组改多一点线程数,建议不要超过50个,不要乱在别人的网站进行压测。

 

图形结果报告

JMeter中级篇-8-网站性能测试用例1设计

结果树报告

JMeter中级篇-8-网站性能测试用例1设计

聚合报告

JMeter中级篇-8-网站性能测试用例1设计

你可以试试其他的报告,多测试几次,熟悉一下不同报告的生成效果。

JMeter中级篇-8-网站性能测试用例1设计

 

性能测试用例1就介绍到这里,下一篇介绍用例2的设计过程。