海安县住房和城乡建设局网站,wordpress user pro,新思域设计公司网站建设,wordpress移除评论如何使用英文界面的JMeter
Jmeter启动时会自动判断操作系统的locale 并选择合适的语言启动#xff0c;所以#xff0c;我们启动jmeter后#xff0c;其会出现一个倍感亲切的中文界面。但由于jmeter本身的汉化工作做得不好#xff0c;你会看到有未被汉化的选项及元件的参数。… 如何使用英文界面的JMeter
Jmeter启动时会自动判断操作系统的locale 并选择合适的语言启动所以我们启动jmeter后其会出现一个倍感亲切的中文界面。但由于jmeter本身的汉化工作做得不好你会看到有未被汉化的选项及元件的参数。而且部分翻译并不准确因此对于英文比较好的牛人来说更喜欢纯正的英文界面。
强制以英文方式启动jmeter的方法如下
在windows环境下打开jmeter解压目录bin目录下的jmeter.bat文件也就是jmeter程序的启动文件选择记事本方式打开。做以下修改
.................
set HEAP-Xms512m -Xmx512m
set NEW-XX:NewSize128m -XX:MaxNewSize128m
set SURVIVOR-XX:SurvivorRatio8 -XX:TargetSurvivorRatio50%
set TENURING-XX:MaxTenuringThreshold2
set RMIGC-Dsun.rmi.dgc.client.gcInterval600000 -Dsun.rmi.dgc.server.gcInterval600000
set PERM-XX:PermSize64m -XX:MaxPermSize64m
set LOCALE-Duser.languageen -Duser.regionrem
set DEBUG-verbose:gc -XX:PrintTenuringDistribution.........
rem Server mode
rem Collect the settings defined above
set ARGS%DUMP% %HEAP% %NEW% %SURVIVOR% %TENURING% %RMIGC% %PERM% %DDRAW% %LOCALE%
.............
晕死当我上面介绍了那么多后在最新的2.8版本我无意中发现了这个功能。 如何使用镜像服务器 在调试和修改测试计划的过程中通常会为采样器增加一些额外的设置例何设置额外的HTTP头、cookie管理器或认证管理器等但当设置了这些内容后sampler发出的请求是否就与预期的完全一支呢 当然用户可以通过添加监听器来看查采样器发出的HTTP请求但如果调试过程中并不想真正地把请求发送给被测应用如何解决这个问题呢 Jmeter 提供了一个名叫HTTP Mirror Server的组件HTTP Mirror Server可以启动一个镜像的服务器该服务器把所有接收到的请求原封不动地返回这样就可以看到发出请求的具体内容了。
添加HTTP Mirror Server的方式
右键点击“工作台”---非测试元件---HTTP Mirror Server 如果有必要的话需要修改端口号点击“启动”按钮来启动Server 。
接下来修改采样器使其将HTTP请求 发送到localhost:8081也就是Mirror Server启动的位置 然后运行测试计划则可以从监听器“查看结果树”中看到响应数据。 JMeter分布式测试 Jmeter 是java 应用对于CPU和内存的消耗比较大因此当需要模拟数以千计的并发用户时使用单台机器模拟所有的并发用户就有些力不从心甚至会引起JAVA内存溢出错误。为了让jmeter工具提供更大的负载能力jmeter短小精悍一有了使用多台机器同时产生负载的机制。 那么是如何实现多台负载机同时运行的呢当然不会多个人坐在多台负载机面前一喊开始大家同时启动jmeter。这种方式很笨也很难达到真正的同步。其实我们通过单个jmeter 客户端就可以控制多个远程的jmeter服务器使它们同步的对服务器进行压力测试。 通过远程运行jmeter测试人员可以跨越多台低端计算机复制测试这样就可以模拟一个比较大的服务器压力一个jmeter客户端实例理论上可以控制任意多的远程jmeter实例并通过他们收集测试数据。这样一样就有了如下特性
* 保存测试采样数据到本地机器
* 通过单台机器管理多个jmeter执行引擎。
* 没有必要将测试计划复制到每一台机器jmeter GUI客户端会将它发往每一台jmeter服务器。
* 每一台jmeter远程服务器都执行相同的测试计划jmeter不会在执行期间做负载均衡每一台服务器都会完整地运行测试计划。 在1.4G Hz3GHz 的CPU 、1GB 内存的 JMeter 客户端上可以处理线程 100300。但是Web Service 例外。XML处理是 CPU 运算密集的会迅速消耗掉所有的CPU 。一般来说以XML技术为核心的应用系统其性能将是普通Web 应用的 10%25% 。另外如果所有负载由一台机器产生网卡和交换机端口都可能产生瓶颈所以一个JMeter 客户端线程数不应超过 10 0 。 采用JMeter 远程模式并不会比独立运行相同数目的非GUI 测试更耗费资源。但是如果使用大量的JMeter 远程服务器可能会导致客户端过载或者网络连接发生拥塞。
使用多台机器产生负载的操作步骤如下
1在所有期望运行jmeter作为 负载生成器的机器上安装jmeter 并确定其中一台机器作为 controller 其他的的机器作为agent 。然后运行所有 agent 机器上的jmeter-server 文件假定使用两台机器192.168.0.100 和192.168.0.101 作为agent
2在controller机器的jmeter的bin目录下找到jmeter.properties 文件编辑该文件
查找 remote_hosts127.0.0.1 修改为 remote_hosts192.168.0.100:1099,192.168.0.101:1099 这里要特别注意端口后有些资料说明端口1644为jmeter的controller 和agent 之间进行通信的默认RMI端口号但是在测试时发现设置为1644运行不成功改成1099后运行通过。另外还要留意agent的机子是否开启了防火墙等。
3启动controller 机子上的jmeter应用选择菜单“运行”---“远程启动”来分别启动agent 也可以直接选择“远程全部启动”来将所有的agent启动。 启动Debug 日志记录 大多数测试元件都支持Debug 日志记录。如果通过 GUI 运行测试计划那么在选中测试元件后可以通过“帮助”菜单enable debug或者disable debug。在“帮助”菜单 中有一个选项“What’s this node? ” 通过它可以查看GUI 和测试元件的类名如图 11 -7 所示。通过它们测试人员可以决定修改哪一项JMeter 属性以便修改日志级别。
例如我们可以点击一个HTTP请求选择菜单栏“帮助”---whats this node ?
在jmeter的bin\目录下找到jmeter.properties 文件关于日志级别的属性如下
#Logging levels for the logging categories in JMeter. Correct values are FATAL_ERROR, ERROR, WARN, INFO, and DEBUG
# To set the log level for a package or individual class, use:
# log_level.[package_name].[classname][PRIORITY_LEVEL]
# But omit org.apache from the package name. The classname is optional. Further examples below.log_level.jmeterINFO
log_level.jmeter.junitDEBUG
#log_level.jmeter.controlDEBUG
#log_level.jmeter.testbeansDEBUG
#log_level.jmeter.engineDEBUG
#log_level.jmeter.threadsDEBUG
#log_level.jmeter.guiWARN
#log_level.jmeter.testelementDEBUG
#log_level.jmeter.utilWARN
#log_level.jmeter.util.classfinderWARN
#log_level.jmeter.testDEBUG
#log_level.jmeter.protocol.httpDEBUG
# For CookieManager, AuthManager etc:
#log_level.jmeter.protocol.http.controlDEBUG
#log_level.jmeter.protocol.ftpWARN
#log_level.jmeter.protocol.jdbcDEBUG
#log_level.jmeter.protocol.javaWARN
#log_level.jmeter.testelements.propertyDEBUG
log_level.jorphanINFO
搜索功能 这是在使用一个变量或含有一定的URL或参数测试计划树和元素有时很难找到。现在一个新的特点是从2.6开始你可以访问它的菜单搜索。它提供了搜索与下列选项
* 使搜索区分大小写区分大小写
* 正则表达式是一个正则表达式搜索文本如果有的话将被搜索的正则表达式树的组件例如“\ BTEST \ b”将匹配任何组件包含测试组件的搜索元素
线程之间传递变量 JMeter 变量作用域局限于所属线程。这样设计是经过深思熟虑的目的是让测试线程能够独立运转。有时候用户可能需要在不同线程间可能属于同一个线程组也可能不属于同一个线程组传递变量。 其中一种方法就是使用属性。属性为所有 JMeter 线程所共享因此当某个线程设置一个属性后其他线程就可以读取更新后的值。 如果存在大量数据需要在线程间传递那么可以考虑使用文件。例如测试人员可以在一个线程中使用监听器保存响应到文件Save Responses to a file 或者 BeanShell PostProcessor 。而在另外一个线程中使用HTTP 采样器的“file: ”协议来读取文件接着使用一个后置处理器或者BeanShell 测试元件提取信息。 如果在测试启动前测试人员就能获得测试数据那么最好将数据保存到文件中使用CSV Dataset读取。
----------------------------------------
这最后一个技巧操作较为麻烦暂时不给详细的例子。算是提供个思路吧知道有这当子事儿就行了。日后有机会再实践^_^
总结
感谢每一个认真阅读我文章的人
作为一位过来人也是希望大家少走一些弯路如果你不想再体验一次学习时找不到资料没人解答问题坚持几天便放弃的感受的话在这里我给大家分享一些自动化测试的学习资源希望能给你前进的路上带来帮助。 文档获取方式
加入我的软件测试交流群632880530免费获取~同行大佬一起学术交流每晚都有大佬直播分享技术知识点
这份文档对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库这个仓库也陪伴我走过了最艰难的路程希望也能帮助到你 以上均可以分享只需要你搜索vx公众号程序员雨果即可免费领取