全国咨询热线:400-618-9090

首页技术文章正文

Jmeter 简单的压力测试

创建时间:2018-08-16 13:28:50.0 来源:黑马程序员技术社区

  今天我们一起利用Apache Jmeter(一种接口测试工具)来进行压力测试学习。压力测试主要目的是测试负载均衡的实现效果。

  安装Jmeter这里就不做阐述了,上网下载个最新版就可以了,因为Jmeter是由JAVA语言开发的,所以安装之前先把java环境配置好。

  安装好了之后,Jmeter的bin目录下有个Jmeter.bat文件,双击就能运行了。

  1534398526749_a.jpg

  运行软件之后,我们右击“测试计划”——“添加”——“Threads(Users)——线程组”,这样就建好了一个线程组了,作用当然是用来跑线程。

  有了线程组之后,我们再右击线程组,“添加”——“配置元件”——“http请求默认值”,在这里面可以设置一些常用的默认的设置,这里我输入我们的测试服务器的IP或域名,这里我输入“127.0.0.1”,端口号则输入“8000”,(因为我要测试的地址是:127.0.0.1:8000)协议是“http”,如果要测试的网址是https开头那就填“https”,其他则默认,这时候点击左上角保存会弹出一个保存框,这是让你保存你现在所做的测试配置,以后需要再测试的话的直接打开保存的jmx文件就行了。

  1534398623440_b.jpg

  保存完了之后,我们再右击“线程组”——“添加”——“Sampler”——“http请求”。这里和刚才的“http请求默认值”不是一样的吗?刚刚那个只是默认值,只是用来设置一些默认配置。真正发起请求的是“http请求”

  接着,我们再右击“线程组”——“添加”——“监听器”——“察看结果数”,在这里可以查看到http请求和结果。每次新建组件和修改配置信息都要点击保存,页面配置图如下所示:,在http请求里面我们在“路径”里面输入“/api/departments/”就ok了(这里是我自己本机的一个接口),表示默认路径,IP那一栏就不用输入了。这是因为在http请求默认值里面已经输过IP地址,以后可以新建多个http请求,只要修改路径就行了,这样就可以访问同一个网站的不同页面,这就是“http请求默认值”的意义所在,把一些共用的设置写一遍就好了。

  1534398631815_c.jpg

  察看结果树的结果

  我们新建的“http请求”返回结果200,表明请求成功,从绿色打钩也能看出,上图中的下拉列表框可以选择显示格式,我们选择json,切换到“响应数据”就可以看到返回的页面。

  设置线程并发数

  接下来点击“线程组”可以看到线程组的设置页面,默认设置是1个线程,1秒启动,循环1次。线程数表示启动多少个线程,Ramp-Up Period表示花多长时间启动所有线程,循环次数表示每个线程的执行次数。例如,我设置线程数为4,Ramp-Up Period为3,循环次数2,表示软件将在3秒内启动4个线程,也就是3/4秒启动1个线程,每个线程执行2次请求。

  看下表单结果树

  1534398640018_d.jpg

  线程并发设置

  此外还可以勾选“调度器”,比如我填入持续时间20,启动延迟0,将循环次数勾选“永远”,表示线程立即启动,执行20秒后停止。要注意,如果设置了持续时间和启动延迟,那么下面的启动时间和结束时间就不起作用了,就不用管了,点击运行即可。

  之前仅仅设置了“察看结果树”这个监听器,这时候可以右击“线程组”——“添加”——“监听器”,里面有很多监听器可供选择,比如图形结果,用表格查看结果,聚合报告等等,这些都是反映测试过程的指标数据。图形结果以图形的形式显示吞吐量、偏移、平均值等信息,表格结果显示每一次请求的时间,返回,发送字节数,连接时间等等,聚合报告里面显示总体请求的吞吐量,错误率等等。下图为表格结果的样式。

  1534398647487_e.jpg



作者:黑马程序员软件测试培训学院
首发:http://www.itheima.com/special/testzly/index.html

在线咨询 我要报名