饰品企业网站建设,大连工程信息建设网,政务新网站建设,网站建设xml下载一、简介
JMeter#xff0c;一个100#xff05;的纯Java桌面应用#xff0c;由Apache组织的开放源代码项目#xff0c;它是接口功能、自动化、性 能测试的工具。具有高可扩展性、支持HTTP、HTTPS、TCP、等多种协议#xff0c;还可以自己编写Java脚本对 协议进行扩展。
官…一、简介
JMeter一个100的纯Java桌面应用由Apache组织的开放源代码项目它是接口功能、自动化、性 能测试的工具。具有高可扩展性、支持HTTP、HTTPS、TCP、等多种协议还可以自己编写Java脚本对 协议进行扩展。
官方网站https://jmeter.apache.org
二、安装和配置
1、本机安装好jdk环境
2、官网下载压缩包在任意目录下解压
3、修改配置文件打开Jmeter的bin目录下jmeter.properties修改
languagezh_CN
sampleresult.default.encodingutf-8
4、进入到Jmeter的bin目录下双击jmeter.bat启动 三、Jmeter常用组件
在Jmeter中可以通过添加不同的组件来实现不同的功能常用的组件有
测试计划
一个最基本的组件所有的其他组件都要在它的内部运行。
线程组
线程组代表了一组用户它可以模拟1个或多个用户可以发起1次或多次请求也可以连续发送n秒的 请求。
取样器
取样器代表了一个请求比如HTTP请求TCP请求等通过配置服务端接口的ip、端口号和参数等信 息就可以向服务端发送数据并拿到响应。
断言
断言就是一个预期结果断言通常是针对某个HTTP请求的判断HTTP的返回值是否符合断言的规则 比如是否包含“success”状态码是否是200等。如果断言通过Jmeter就认为HTTP请求成功否则就标 记为失败。
监听器
监听器就是在Jmeter测试过程中获取一些运行数据比如发送了多少次请求、成功了多少次失败了 多少次。每次请求和响应的具体内容等。
四、编写一个HTTP接口脚本
打开码同学商城卖家管理后台登录页面输入用户名密码进行登录通过fiddler可以抓包登录接口的信息
url/seller/login
请求方式GET
参数usernamemtx-001passworde10adc3949ba59abbe56e057f20f883ecaptcha1512uuidc9835a40-047b- 11ec-ae8f-41d7ee6b2a89
第一步创建线程组
在测试计划上右键添加线程组保持默认 第二步创建HTTP请求
在线程组上右键添加取样器-HTTP取样器并根据接口的信息填写协议类型、服务器ip、端口号、 请求方式、路径、请求参数等信息 第三步创建监听器
在线程组上右键添加监听器-查看结果树点击菜单栏运行按钮这样就能看到接口运行后的请求和 返回数据 第四、断言
默认情况下Jmeter会根据接口的响应状态码是否为200来判断接口是否成功但是很多时候200只能代表HTTP请求成功了但是业务上未必成功。因此还需要对接口的返回数据做判断。因此可以使用 Jmeter断言来对返回数据做判断。
断言通常是针对某个HTTP请求的判断HTTP的返回值是否符合断言的规则比如是否包含“success” 等如果断言通过Jmeter就认为HTTP请求成功否则就标记为失败在查看结果树中标记为红色。
常用的断言有Json断言和响应断言。
Json断言
针对接口返回是json格式数据的可以使用json断言它可以判断json字符串中的某个值是否符合预期。
比如登录接口成功后服务器会返回此用户的username和nickname
{ access_token:
eyJhbGciOiJIUzUxMiJ9.eyJzZWxmT3BlcmF0ZWQiOjAsInN1YiI6IkNMRVJLIiwicm9sZSI6IlNVUE VSX1NFTExFUiIsImZvdW5kZXIiOm51bGwsInJvbGVzIjpbIkJVWUVSIiwiU0VMTEVSIiwiQ0xFUksiXS wic2VsbGVyTmFtZSI6IjExMSIsImNsZXJrSWQiOjE2LCJ1dWlkIjpudWxsLCJ1aWQiOjE5NjUsInNlbG xlcklkIjo0MSwiY2xlcmtOYW1lIjoibXR4LTAwMSIsImV4cCI6MTYyOTg3MDU5OCwidXNlcm5hbWUiOi JtdHgtMDAxIn0.BEnmRfCU2nfkqMwQVajaxMP5uoUtcyoAsTHMkaK_9RoHwaxS0GNUDY- 9I048wx8LX7pmyMqWl70Q4B31dlVTHw, uid: 1965, refresh_token:
eyJhbGciOiJIUzUxMiJ9.eyJzZWxmT3BlcmF0ZWQiOjAsInN1YiI6IkNMRVJLIiwicm9sZSI6IlNVUE VSX1NFTExFUiIsImZvdW5kZXIiOm51bGwsInJvbGVzIjpbIkJVWUVSIiwiU0VMTEVSIiwiQ0xFUksiXS wic2VsbGVyTmFtZSI6IjExMSIsImNsZXJrSWQiOjE2LCJ1dWlkIjpudWxsLCJ1aWQiOjE5NjUsInNlbG xlcklkIjo0MSwiY2xlcmtOYW1lIjoibXR4LTAwMSIsImV4cCI6MTYyOTg3MTE5OCwidXNlcm5hbWUiOi JtdHgtMDAxIn0.54MSaFcXIuGexBeXY-79oO5_8tAHvmEvtbJ0qKUE9A5VpqKmbECahX4zcb_2XQEox- H0aIZX49P9ncRrH22Jgg, face: null, role_id: 0, founder: 1, nickname: mtx-001, username: mtx-001
}
添加json断言判断服务器返回的username是否符合预期。
在HTTP请求上右键添加json断言 解释
Assert JSON Path exists填写Json路径表达式其中$代表整个json$.username就是 username对应的值
Additionally assert value是否对Json路径表达式对应的值进行判断
Expected Value期望值的内容填写你的期望值
Json Path的更多详细用法参见https://github.com/json-path/JsonPath 响应断言
响应断言的应用范围更广一些只要返回的响应内容是文本内容无论什么格式HTML、Json等响 应断言都可以判断 在HTTP请求上右键添加响应断言 解释
测试字段对哪部分数据进行判断默认是响应内容
模式匹配规则判断规则默认是包含字符串
测试模式具体判断的内容
作为一个软件测试的过来人我想尽自己最大的努力帮助每一个伙伴都能顺利找到工作。所以我整理了下面这份资源现在免费分享给大家有需要的小伙伴可以关注【公众号开心螺蛳粉】自提 软件测试面试文档
我们学习必然是为了找到高薪的工作下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料并且有字节大佬给出了权威的解答刷完这一套面试资料相信大家都能找到满意的工作。 行动吧在路上总比一直观望的要好未来的你肯定会感谢现在拼搏的自己如果想学习提升找不到资料没人答疑解惑时请及时加入群1150305204里面有各种测试开发资料和技术可以一起交流哦。