Jmeter下载及运行
1、Jmeter:Apache JMeter™应用程序是开源软件,纯Java应用程序,旨在加载测试功能行为和测量性能。它最初是为测试Web应用程序而设计的,但后来扩展到其他测试功能。
2、Jmeter下载地址:https://jmeter.apache.org/download_jmeter.cgi
3、Java下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
4、新建 JAVA_HOME 环境变量,值为D:\Software\Java\jdk1.8.0_191
5、Path:%JAVA_HOME%\bin;
6、检验Java版本:java -version
7、运行Jmeter:进入D:\Software\apache-jmeter-5.0\apache-jmeter-5.0\bin,双击jmeter.bat文件就可以运行Jmeter,可以创建桌面快捷方式方便下次运行。
8、官方说明文档:https://jmeter.apache.org/usermanual/index.html
9、Jmeter离线文档:D:\Software\apache-jmeter-5.0\apache-jmeter-5.0\printable_docs\index.html
10、一般关于HTTP请求的测试计划:测试计划-线程组-HTTP请求-断言-察看结果树。
11、Jmeter基本原理是建立一个线程池,多线程运行取样器产生大量负载,在运行过程中通过断言来验证结果的正确性,通过监听器来记录测试结果。如果取样器中有参数化的需求,可以通过配置元件或者前置处理器来完成。如果有关联需求,可以通过后置处理器来完成。如果我们想要设置运行场景,比如模拟多少用户,运行多长时间,就设置线程组。如果我们想要模拟并发场景,可以利用定时器来设置。如果我们想要控制业务的执行逻辑,比如登录只运行一次,我们可以用控制器完成。
12、取样器、断言、监听器组合在一起就可以发送请求、验证结果及记录结果。
13、前置处理器、配置元件、后置处理器都是为取样器提供数据支持的,取样器关注的是业务逻辑。
14、常用的测试组件还有逻辑控制器,关于取样器来设置一些逻辑控制;定时器,比如同步定时器,可以用来模拟用户在同一时刻发送请求;线程组可以模拟大量用户负载的情况。
14、测试片段:一个辅助测试元件的组件,此节点下几乎可以放置任何测试元件,但他一般不会被运行。其作用一是用来备份元件,二是其下的元件可以被模块控制器调用,可以利用他来模块化请求,把业务封装成一个方法,供模块控制器调用。
15、非测试元件有,HTTP代理服务器、HTTP镜像服务器、属性显示。
16、JMeter测试计划4要素:脚本中测试计划只能有一个;测试计划中至少要有一个线程组;至少要有一个取样器;至少要有一个监听器。
17、测试计划:可以设置用户全局变量:
图118、线程组:可以设置虚拟用户、运行次数或运行时间等:
图219、HTTP Cookie Manager:记录Cookie信息,选择默认即可:
图320、User Defined Variables:用户自定义的变量,jsessionid一般是服务器返回的,每个用户返回不一样,不应该固定该值,但是Badboy录制会有该值,我们要去掉:
图421、HTTP Header Manager:管理HTTP头信息:
图522、循环控制器:例如用户登录只有一次可以设置循环次数为1:
图623、取样器Sampler:
图7 图8图9 图10从左到右依次含义:
*自动重定向:自动转向目标页面,不记录重定向过程内容,比如A重定向到B,查看结果树只记录B内容不记录A内容,无法做关联;
*跟随重定向:记录重定向过程内容,比如A重定向到B,查看结果树记录B内容也记录A内容,可以做关联;
*默认选中,对应HTTP响应头的Connection:Keep-Alive;
*这个属性是与POST方法绑定的,选中的话可以文件上传;
*浏览器兼容模式,如果前者选中,则最好这个也选中;