Jmeter软件测试总结 |
您所在的位置:网站首页 › 开源软件应用实验报告 › Jmeter软件测试总结 |
即将离开公司,值此时刻我想记录一下这两个月的收获,也为以后的复习做准备。 JmeterJmeter是这次实习使用最多的软件了,现已达到熟练水平。 现在我将从安装开始,重新梳理一遍Jmeter的使用方法。 什么是JmeterApache JMeter 是 Apache 组织开发的基于 Java 的压力测试工具。用于对软件做压力测试,它最初被设计用于 Web 应用测试,但后来扩展到其他测试领域。 它可以用于测试静态和动态资源,例如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库、FTP 服务器, 等等。JMeter 可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。另外,JMeter 能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证你的程序返回了你期望的结果。为了最大限度的灵活性,JMeter 允许使用正则表达式创建断言。 Apache jmeter 可以用于对静态的和动态的资源(文件,Servlet,Perl 脚本,java 对象,数据库和查询,FTP 服务器等等)的性能进行测试。它可以用于对服务器、网络或对象模拟繁重的负载来测试它们的强度或分析不同压力类型下的整体性能。你可以使用它做性能的图形分析或在大并发负载测试你的服务器/脚本/对象。 Jmeter的工作原理如图 登录官网Jmeter下载,得到压缩包,下载地址http://jmeter.apache.org/download_jmeter.cgi 下面我们重点看下 bin 目录,如图,有几个重点文件需要关注 jmeter.properties JMeter 核心配置文件,各种配置基本在这完成 log4j.conf JMeter 日志配置管理 jmeter.log JMeter 运行日志记录,什么输出信息、警告、报错都在这里进行了记录 jmeter.bat windows 下 jmeter 启动文件 shutdown.cmd windows 下 jmeter 关闭文件 stoptest.cmd windows 下 jmeter 测试停止文件 jmeter-server.bat windows 下 jmeter 服务器模式启动文件 注:每一个.cmd 文件都对应一个.sh 文件,.sh 是 linux 下的对应功能的文件 Jmeter.properties的个性化配置Jmeter的默认配置有一些不太方便的地方,自己可以修改配置。在Windows上可以用记事本或者markdown编辑器打开,在macOS上可以先复制一个.txt文件,修改后改后缀再替换原文件,或者直接用vim编辑。 中文GUI配置 #language=en language=zh_CN #简体中文 GUI图标放大比例设置JMeter GUI界面布局 当JMeter以GUI模式运行时,窗口主要由三部分构成: 1.功能区 上方菜单栏,下方工具栏。菜单栏展示了JMeter提供的功能菜单,而工具栏中的图标 是常见功能的快捷方式。 2.视图区 以树状结构呈现JMeter元素,其中“Test Plane”是树的根节点,每一个节点就是一个JMeter元素。 在此区域可以添加、删除节点或者通过拖曳调整节点的位置。 3.内容区 当在视图区选中一个JMeter元素节点时,内容区则会相应地显示该元素的内容。 这时可以对其内容进行查看、设置等操作。
功能区工具栏图标大小设置 #工具栏图标默认size: 22x22 #可用size: 22x22, 32x32, 48x48 jmeter.toolbar.icons.size=32x32视图区目录树图标大小设置 #目录树图标默认size: 19x19 #可用size: 19x19, 24x24, 32x32, 48x48 jmeter.tree.icons.size=24x24内容区编辑字体设置 #调整JMeter内容区的编辑字体 jsyntaxtextarea.font.family=consolas #默认Hack,太难看,使用经典的consolas jsyntaxtextarea.font.size=18 #这两个配置项必须同时设置才有效 响应数据编码设置 #响应数据编码默认为ISO-8859-1(即Latin-1) sampleresult.default.encoding=UTF-8 #设置为UTF-8,避免出现乱码 远程主机配置配置远程主机的 IP,默认为本机。用逗号","可以设置多个远程主机 remote_hosts=127.0.0.1多个远程主机指定示例如下,其中:后为端口 remote_hosts=127.0.0.1:1099,127.0.0.1:1200,127.0.0.1:1300 日志管理配置设置日志格式 log_format_type=default设置日志输出级别 log_level.jmeter=INFO设置 junit 日志输出级别 log_level.jmeter.junit=DEBUG设置日志输出目标文件,默认为 jmeter.log log_file=jmeter.log jmeter.bat 关键配置修改为了更优化的使用 jmeter,需要对 jmeter.bat 中的一些配置根据当前机器的配置进行优化,这里进行关键配置项说明,大家根据自己的机器的配置来进行修改。jvm 相关配置,大概在 80 行左右,找到这些配置,对其中的数值根据当前机器的硬件配置来修改。 set HEAP=-Xms2048m -Xmx2048m set NEW=-XX:NewSize=512m -XX:MaxNewSize=512m set SURVIVOR=-XX:SurvivorRatio=8 -XX:TargetSurvivorRatio=50% set TENURING=-XX:MaxTenuringThreshold=2 if %current_minor% LEQ "8" (rem Increase MaxPermSize if you use a lot of Javascript in your Test Plan : set PERM=-XX:PermSize=512m -XX:MaxPermSize=1024m) Jmeter接口测试脚本打开Jmeter后如图所示 在 jmeter 中,线程组组件运行用户设置线程数量、初始化方式等等配置。例如,如果你设置线程数为 100,那么 jmeter 将创建并模拟测试100 个用户请求到服务器端。
接下来添加一个HTTP请求 比如现在有一个接口,网址是http://127.0.0.1:8080/test/getname/,作用是返回服务器中的name。 那么Http请求写http,ip写127.0.0.1,端口号写8080,http请求是rest服务,我们要从服务器读取数据,自然是Get,路径就是/test/getname/,如果请求内容有中文内容编码一般写UTF-8。 有时我们还需要随请求一起上传一写参数,可以以键值对的方式一个一个添加 注意: 默认下载的 jmeter 是不支持该方式的,需要安装 json plugins,在选项-Plugins Manager-Available Plugins 找到 JSON Plugins 安装好即可。下面对 json path assertion 进行说明 在某些情况下,我们可以设置一些用户定义的变量,比如端口号就可能会改变,如果一次改变我们就要把脚本中的所有端口号都要找到改正,那很麻烦,因此对于某些经常改变的值,或者需要用户自定义的值,我们可以设置,类似于全局变量,所有的调用都是对他的引用。 同样,还是先新建一个线程组,若干个http请求,性能测试主要考虑服务器的响应时间和正确率,所以查看单次请求成功与否的“查看结果树”意义就不大,我们需要“汇总报告”或者“聚合报告”。
如果我们要测一个网页打开速度,网页有很多个请求,这时我们就可以把这些请求自动录制下来。 首先新建一个http代理服务器。选择好本地ip和端口号,还有目标控制器。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |