1、Jmeter的安装与部署
1.1 环境要求
jdk1.8、配置jdk环境变量(JAVA_HOME:C:\Program Files\Java\jdk1.8.0_101 Path:;%JAVA_HOME%\bin; CLASSPATH:%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar)
1.2 安装Jmeter
参考Jmeter的下载及安装
1.3 配置Jmeter环境变量
参考配置Jmeter环境变量
1.4 Jmeter的使用
找到jmeter安装路径的bin文件夹(我的电脑是D:\server\apache-jmeter-5.3),如下图

双击jmeter.bat后若显示如下界面即运行成功

同时,我也为大家准备了一份软件测试视频教程(含面试、接口、自动化、性能测试等),就在下方,需要的可以直接去观看,也可以直接点击文末小卡片免费领取资料文档
软件测试视频教程观看处:
字节大佬教你逼自己如何在15天内掌握自动化测试(接口自动化/APP自动化/Web自动化/性能测试),内含项目实战
手写自动化测试脚本(不建议用)
通过录制系统生成自动化测试脚本(推荐用)
2.1 设置代理服务器
进入浏览器设置,找到如下目录(图片不清则双击查看)
Google浏览器参考如下界面

Edge浏览器参考如下界面

如下图进入计算机代理设置,打开使用代理服务器,地址写http://localhost,端口写8888(尽量不使用8080)。若下方有保存按钮,则需要点击按钮保存,然后浏览器代理服务器设置完毕

2.2 浏览器证书设置
浏览器证书设置:打开浏览器设置中的高级设置
Google浏览器参考如下界面

Edge浏览器参考如下界面

2.2.1 添加证书
打开管理证书后选择受信任的根证书颁发机构点击导入,进入jmeter安装目录Bin文件夹





2.3 创建线程组及Http代理服务器
2.3.1 创建线程组
选中测试计划,右键,选择添加->线程->线程组,即可新建线程组

将线程组命名为绩效考核系统自动化测试

2.3.2 在线程组中添加一个录制控制

2.3.3创建Http代理服务器
选中测试计划(若界面中含有工作台,换成选中工作台,执行新建Http代理服务器的操作),右键,选择添加->非测试元件->Http代理服务器,即可新建Http代理服务器

端口设为8888,与3.1中设置的代理服务器的端口相同;目标控制器选择 测试计划>绩效考核系统自动化测试

2.4 录制系统测试脚本(以绩效考核系统为例)
2.4.1 录制脚本
点击代理服务器右侧里面的启动录制按钮,弹出一个根证书的弹窗,点击确定。


进入系统登录界面,如图所示,jmeter已经开始录制

进入系统后,选择几个打分项,点击停止录制

如下图我们可以看到,我们与系统进行的交互行为,已经被录制成了脚本

这时,我们可以关闭代理了,否则会影响上网

2.4.2 创建HTTP请求默认值
选中测试计划,右键,添加->配置元件->HTTP请求默认值,新建完成后,将HTTP请求默认值放在目录最上方(只要是配置类文件,最好都放在目录最上方)

在HTTP请求默认值设置默认协议为http,默认ip或者服务器为10.17.18.24,其他内容视情况而定

在请求默认值设置好默认参数后,可以将线程组的每个请求的参数删除,这样http请求参数就会默认HTTP请求默认值里的参数值。

重点!!!
可以在录制测试脚本之前就创建好HTTP请求默认值,这样录制出来的脚本也会默认为HTTP请求默认值里的参数值

3、修改自动生成的测试脚本
3.1 获取登录token

选中登录,右键,添加->后置处理器->JSON提取器,获取用户登录token

3.2 配置token参数
如下图所示,进入getinfo请求的http信息头管理器,将参数Authorization对应的值修改成Bearer ${token}(JSON提取器获取的登录令牌)

后面的每个请求,都要修改上述参数。
3.3 添加监听器
选中测试计划,右键,添加->监听器,可以添加如下图所示的监听器(如察看结果树、汇总报告、聚合报告、汇总图)

添加完成之后如下图所示

3.4 后置处理器
添加BeanShell后置处理器,设置接收的响应消息的编码格式(UTF-8)

3.5 定时器

后续待完善
4、遇到的问题
org.apache.http.NoHttpResponseException: failed to respond 问题解决
证书问题


5、总结
PS:这里分享一套软件测试的自学教程合集。 对于在测试行业发展的小伙伴们来说应该会很有帮助。除了基础入门的资源,博主也收集不少进阶自动化的资源,从理论到实战,知行合一才能真正的掌握。全套内容已经打包到网盘,内容总量接近100个G。

☑ 240集-零基础到精通全套视频课程
☑ [课件+源码]-完整配套的教程
☑ 18套-测试实战项目源码
☑ 37套-测试工具软件包
☑ 268道-真实面试题
☑ 200个模板-面试简历模板、测试方案模板、软件测试报告模板、测试分析模版、测试计划模板、性能测试报告、性能测试报告、性能测试脚本用例模板(信息完整)
这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。