-
http协议请求响应模型
场景:登录
1.客户端发起请求到api接口
1.1用户在客户端填写用户名和密码,点击登录,发送请求
2.api接收到客户端发起的用户请求
2.1 api对业务逻辑进行验证
2.1.1验证用户名和密码是否合法
比如:用户名要求必须为真实手机号码(11位,1开头,第二位34)
如果验证失败,即用户名不合法,那么需要给客户端发送响应码
比如码值为1,2,3
1代表用户名格式错误
2代表用户名或密码错误
3代表密码格式错误
3.api会将用户输入的数据发给db层
3.1数据库查询成功则返回1,失败返回0
4.DB会将返回的查询数据库的条目数给api
5.api返回成功或失败的状态码发给客户端
6.客户端将返回的信息提示给用户
一 客户端
功能测试 性能测试 自动化测试
二 接口层
接口测试 功能测试 性能测试 自动化测试
三 数据库层
可以将开放人员使用到的sql语句单独拿出来进行性能测试
查看全部 -
HTTP请求的方法:
HTTP/1.1协议中共定义了八种方法(有时也叫”动作“),来表明Request-URL指定的资源不同的操作方式
1、OPTIONS
返回服务器针对特定资源所支持的HTTP请求方法,也可以利用web服务器发送’*‘的请求来测试服务器的功能性
2、HEAD
向服务器索与GET请求相一致的响应,只不过响应体将不会被返回。这一方法可以再不必传输整个响应内容的情况下,就可以获取包含在响应小消息头中的元信息。
3、GET
向特定的资源发出请求。
注意:GET方法不应当被用于产生”副作用“的操作中,例如在Web Application中,其中一个原因是GET可能会被网络蜘蛛等随意访问。
4、POST
向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改
5、PUT
向指定资源位置上传其最新的内容
6、DELETE
请求服务器删除Request- URL所标识的资源
7、TRACE
回显服务器收到的请求,主要用于测试或诊断
8、CONNECT。
HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。
注意:
1)方法名称是区分大小写的
当某个请求所针对的资源不支持对应的请求方法的时候,服务器应当返回状态码405(Mothod Not Allowed);当服务器不认识或者不支持对应的请求方式时,当返回状态码501(Not Implemented)。
2)HTTP服务器至少应该实现GET和HEAD/POST方法,其他方法都是可选的,此外除上述方法
查看全部 -
JMeter乱码解决方法
1、在http请求中:Content encoding 设置成utf-8
2、在jmter的bin文件夹中,将jmeter.properties 设置encoding为UTF-8(默认未ISO-8859-1);
3、添加后置处理器BeasShell PostProcesor prev.setDataEncoding("utf-8")查看全部 -
http协议响应码:https://blog.csdn.net/xiaojin21cen/article/details/78697328
1xx: 提示信息, 表示请求已经接收并且继续处理;
2xx: 响应成功, 表示请求已经接收成功;
3xx: 重定向, 要完成的请求必须更进一步的操作
4xx: 客户端错误, 可能是请求语法错误或者无法实现;
5xx: 服务器错误类, 表示服务器未能处理请求(可能是内部出现异常);
查看全部 -
乱码解决 1、jmeter.properties 设置encoding为UTF-8; 2、添加后置处理器BeasShell PostProcesor prev.setDataEncoding("utf-8")查看全部
-
每做一个脚本都需要添加一个线程组
线程组用于设置脚本运行的用户数,相当于一个场景设置
HTTP请求:服务器名称或IP不能写成“http://localhost”,即“http://”头不用写,请求时会自动加上
请求结果中文乱码解决:
(1)可以解决部分中文乱码
JMeter的HTTP请求页面中“Content encoding”设置为“utf-8”;
(2) 一般可以解决
打开JMeter安装文件bin下的jmeter.properties,修改sampleresult.default.encoding=UTF-8(去掉前面 的“#”,修改ISO-8859-1为UTF-8)
(3)可以解决几乎所有
线程组添加后置处理器BeanShell PostProcessor,Script写入prev.setDataEncoding("utf-8")
聚合报告反应整个测试的结果
察看结果树只是供测前调试,真正测试时关闭察看结果树
查看全部 -
常用HTTP请求方式
一、GET
url:
http://127.0.0.1:8080?username=zs&password=123
二、POST
url:
请求体
{
[
"userName":"zs",
"password":"123"
]
}
http请求方法:
http/1.1协议中共定义了八种方法(有是也叫“动作”),来表明Request-URL指定的资源不同的操作方式
1、OPTIONS
返回服务器针对特定资源所支持的HTTP请求方法,也可以利用向web服务器发送'*'的请求来测试服务器的功能性
2、HEAD
向服务器索与GET请求相一致的响应,只不过响应体将不会被返回。这一方法可以再不必传输整个响应内容的情况下,就可以获取包含在响应小消息头中的元信息
3、GET
向特定的资源发出请求。
注意:GET方法不应当被用于产生“副作用”的操作中,
例如在web Application中,其中一个原因是GET可能会被网络蜘蛛等随意访问
4、POST
向指定资源提交数据进行请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改
5、PUT
向指定资源位置上传其最新内容
6、DELETE
请求服务器删除Request-URL所标识的资源
7、TRACE
回显示服务器收到的请求,主要用于测试或诊断
8、CONNECT
HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。
注意:
(1)方法名称是区分大小写的
当某个请求所针对的资源不支持对应的请求方法的时候,服务器应当返回状态码405(Mothod Not Allwed);当服务器不认识或者不支持对应的请求方法时,应返回状态码为501(Not Impemeted)。
(2)HTTP服务器至少应该实现GET和HEAD/POST方法,
其他方法都是可选的,此外除上述方法
查看全部 -
接口一般有两种理解:
1、开发眼中的接口:模块与模块之间的对接方式定义
2、测试眼中的接口:协议接口(HTTP FTP等),可以独立部署成服务的协议接口查看全部 -
如何实战?
1、安装java环境,1.8
2、下载idea,去官网下载专业版的,有三十天免费试用期,过了之后可以尝试破解…
3、参考这篇教程装好maven和建一个springboot的工程
https://www.cnblogs.com/zmfx/p/8903688.html
注:2019版的idea把web改成了spring web starter ,一样的效果
4、附上代码
DemoApplication.java(到时候是运行这个)@SpringBootApplication public class DemoApplication { public static void main(String[] args) { ConfigurableApplicationContext context=SpringApplication.run(DemoApplication.class,args); for (String str : context.getEnvironment().getActiveProfiles()){ System.out.println(str); } } }
DemoAPI.java
@RestController @RequestMapping("/demoAPI") public class DemoAPI { @RequestMapping(value = "/getDemo/{userName}",method = RequestMethod.GET) public String getDemo(@PathVariable String userName){ String s=" is pig"; userName=userName+s; return "the data is " + userName; } @RequestMapping(value = "/postDemo",method = RequestMethod.POST) public int postDemo(@RequestParam String userName){ return 2; } }
运行起来后,就在浏览器输入:
http://127.0.0.1:8080/demoAPI/getDemo/zhou
就可以啦
查看全部 -
万能jmeter工具应用范围:
BS架构应用性能;(分三层:1.浏览器性能;2.API性能;3.数据库性能测试)
HTTP协议接口功能与性能;
FTP协议接口功能与性能;
数据库相关的性能测试:
1.MySQL数据库性能;(增删改查脚本测试)
MongoDB数据库性能(数据量大,较重要的读写功能性能)
支持自定义Java组件开发;(jmeter工具的组件不满足是可以开发新的组件,Java代码脚本方便管理)
查看全部 -
A到B直接借到钱,处理成功:2XX
A到B借钱,B没有说到C借,成功借到:3XX(重定向)
A到B借钱,没有找到B:4XX(客户端请求包含错误或者不能正确执行)
5XX:服务器不能正确执行一个客户端发送的正确的请求(例如:请求超时)
查看全部 -
JMeter HTTP协议接口性能测试所讲解到的内容
查看全部 -
HTTP协议响应码:
1** 信息响应类
2** 处理成功响应类
3** 重定向响应类
4** 客户端错误
5** 服务器错误
查看全部 -
开发眼中的接口:模块与模块之间的对接方式定义
测试眼中的接口:可以独立部署成服务的协议接口
查看全部 -
HTTP协议请求响应模型
场景:登录
1.客户端发起请求到API接口层
1.1 用户在客户端填写用户名和密码,点击登录,发送请求
2.API接收到客户端发起的用户请求
2.1API对业务逻辑进行验证
2.1.1验证用户名和密码是否合法(例如:用户名要求必须为真实的手机号码,如果验证失败,即用户名不合法,那么需要给客户端返回响应码,比如码值为1.2.3 1代表用户名格式错误,2代表用户名或密码错误,3代表密码格式错误)
3.API会将用户输入的数据发给DB层(数据库)
Create、Read、Update、Delete
3.1 数据库查询成功返回1,失败返回0
4.DB会将返回的查询数据库的条目数给API
5.API返回成功或失败的状态码给客户端
6.客户端将返回信息提示给用户
查看全部
举报