开源性能测试工具大比武

发表于:2019-5-13 08:24

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:晴空    来源:51Testing软件测试网原创

  前言:工具好比兵器,熟练使用工具不一定会性能测试,但是挑选一件趁手的兵器会大大提高的我们的效率,本文将会和小伙伴们一起探究下性能测试工具中的倚天屠龙~
  一:nGrinder
  1.1 nGrinder介绍
  nGrinder是韩国一家公司居于Grinder二次开发的一个性能平台。nGrinder具有开源、易用、高可用、高扩展等特性,在Grinder基础上实现了多测试并行,通过web管理,实现了集群,同时支持Groovy和Jython脚本语言也实现了对目标服务的监控以及插件的扩展。
  1.2 nGrinder架构和原理
  nGrinder架构图
  nGrinder工作原理
  1:由一个控制端controller和多个代理端agent组成,通过控制端(浏览器访问)建立测试场景,然后分发到代理端进行压力测试
  2:用户按照一定规范编写测试脚本,controller会将脚本以及需要的资源分发到agent,用jython执行。
  3:在脚本执行的过程中收集运行情况、相应时间、测试目标服务器的运行情况等。并且保存这些数据生成测试报告,通过动态图和数据表的形式展示出来。用户可以方便的看到TPS、被测服务器的CPU和内存等情况。
  1.3 nGrinder环境搭建
  nGrinder的Github仓库地址是https://github.com/naver/ngrinder
  我们可以在https://github.com/naver/ngrinder/releases这里下载最新版本的nGrinder。
  下载ngrinder-controller-3.4.2.war。
  接下来我们通常有两种方式来启动nGrinder的controller服务。
  1:命令行启动
  java ngrinder-controller-3.4.2.war。
  当然我们可以设置它的一些默认值,比如:
  java -XX:MaxPermSize=512m -jar ngrinder-controller-3.4.2.war --port 7777
  上面的这条命令分别指定了ngrinder的内存使用和服务端口(nGrinder默认的端口号是8080)。
  接下来我们通过访问http://localhost:7777访问nGrinder服务。
  2:配置tomcat环境
  将下载的war包放置在tomcat的webapps目录下即可。
  通过?http://localhost:8080/ngrinder访问服务。
  nGrinder的默认用户名和密码是admin/admin
  1.4 nGrinder初体验
  1.4.1 脚本管理
  创建脚本,使用admin登录后切换到Script栏,点击Create a script,nGrinder会弹出浮层以供我们设置脚本。
  nGrinder支持Groovy和Python两种脚本语言,我们可以自由切换。
  我们所有做的,是非常简单的。
  如果是get请求,我们只需设置下URL即可。当然在Advanced Configuration高级设置中我们可以设置cookie和header。
  如果是post请求,填写完URL后,在高级设置那里我们可以设置param以及cookie和header信息。
  请求信息设置完成后,我们可以点击Validata Script来调试我们的脚本,调试通过后点击Save,nGrinder会自动保存我们的脚步。
  那么问题来了?我们的脚本保存到哪里啦?
  nGrinder集成了svn,我们设置脚本后点击Save,nGrinder会自动保存在自带的svn中。
  1.4.2 测试场景
  在Performance test栏,我们可以场景测试场景,其实叫测试场景不太准确,因为我们创建test后可以立即执行也可以在指定时间执行(一时间想不起来什么好词,书到用时方恨少啊~~)。
  下面我们创建个test来把玩一下:
  Announcement部分我们必须填写Test Name来标识场景的唯一性。其他两项可以不填,没啥用。
  Test Configuration部分,我们能玩的就多了:
  1:enable ramp-up
  这个选项非常有用,允许我们初步初始化负载。
  2:nGrinder允许我们以process(进程)或者thread(线程)的方式生成负载。
  3:Agent这里是设置使用多少代理机。
  4:Vuser per agent顾名思义,每个代理模拟的虚拟用户数。
  5:Script这里选择我们的压测脚本。
  1.5 nGrinder实战
  官方推荐Groovy脚本作为首选,那我们就来配置下Groovy的环境吧。
  Mac下brew install groovy安装。然后配置系统变量
  export GROOVY_HOME=/usr/local/opt/groovy/libexe
  groovy -v来查看版本信息
  为了方便省事儿,我们可以在Web端创建Groovy Maven脚本,然后在IDEA中checkout出来就行。

  从SVN迁出项目时的用户名和密码是登录nGrinder时的用户名密码(默认是admin/admin)。
  接下来,在IDEA下执行下我们的脚本吧
  

 ......
查看更多精彩内容,请点击下载:
版权声明:本文出自《51测试天地》第五十三期。51Testing软件测试网及相关内容提供者拥有51testing.com内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任。
31/3123>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号