小白学习Jmeter工具前必要懂得知识点

前言
项目在重构,在产品已经通过需求评审,完成某一功能原型,开发和测试都开始赶进度。我这边在完成这一功能的测试用例编写后,开发(前端后端)还处于开发和自测阶段。于是我们老大叫预先学习自动化测试工具,为后面测试工作做准备,指定了Jmeter,有空余还可以把Fiddler抓包工具给学了。所以,就此我将自己的学习经历总结一下,分享给有需要的朋友。

如果看过我前面的文章,应该知道我是文科生转行过来的,我对网络、工科知识基础不扎实。因此我在了解工具之前,在慕课网选择很多基础/入门的课程,自己去看视频,还有就是搜索博客和工具相关资料一边读一边实操。所以说,以下资料来源慕课网视频和自己学习总结的笔记,如果有表述不妥或者不清晰的情况,请多多指出,共同进步。

Jmeter工具涉及的基础知识

(1)常见的接口协议

  • Http 超文本传输协议
  • Https 安全超文本传输协议
  • FTP 文件传输协议
  • TCP 网络控制协议
  • IP 互联网协议
  • UDP 用户数据协议

(2)Http协议响应码(测试可定位错误)

  • 1XX:信息响应类,表示接收到请求并且继续处理(中间状态,瞬间)
  • 2XX:处理成功响应类,表示动作被成功接收、理解和接受 eg:200(处理成功)
  • 3XX:重定向响应类,为了完成指定动作,必须接受进一步处理 eg:329(重定向)
  • 4XX:客户端错误,客户请求包含语法错误或者是不能正确执行 eg:响应码404>我们请求的资源不存在
  • 5XX:服务端错误,服务端不能正确执行一个正确的请求 eg:500
    响应码在服务端日志中会显示,在之前业务中出现过服务端抛出异常,遗留bug没处理,大错误。

(3)Http协议请求响应模型(一次请求的生命周期或简单的软件分层)
小白学习Jmeter工具前必要懂得知识点_第1张图片
客户端发起请求 到 API层(逻辑处理后)将数据发送 到 DB层(数据库)
一、客户端
功能测试、性能测试、自动化测试
二、接口层
接口测试、功能测试、性能测试、自动化测试
三、数据库层
可以将开发人员使用到的sql语句单独拿出来进行性能测试

场景:登录
1、客户端发起请求到api接口层
-1.1用户在客户端填写用户名和密码,点击登录,发送请求
2、api接收到客户端发起的用户请求
-2.1 api对业务逻辑进行验证
2.1.1 验证用户名和密码是否合法
比如:用户名要求必须为真实手机号码(11位,1开头,第二位34578)
如果验证失败,即用户名不合法,那么需要给客户端返回响应码
比如码值为1 , 2 , 3

  • 1代表用户名格式错误
  • 2代表用户名或密码错
  • 3代表密码格式错误

3、api会将用户输入的数据发给DB层(读数据库)
Create、Read、Update、Delete
Select * from user where
userName = “MRlin” and passWord = “123456”;
-3.1数据库查询成功则返回1,失败则返回0
4、DB会将返回的查询数据库的条目数给api
5、Api返回成功或失败的状态码给客户端
6、客户端将返回信息提示给用户

(4)Jmeter应用

  • 一、BS架构应用性能
  • 二、HTTP协议接口功能与性能 功能:请求方式支持 性能:大量并发访问,基于正确数据来进行
  • 四、MySQL数据库性能(浏览器、api、数据库)
  • 五、MongoDB数据库性能
  • 六、支持自定义Java组件开发

(5)常用HTTP请求方式
①get
②post
其他方式(动作)
③options ④head ⑤connect ⑥put ⑦delete ⑧trace
get请求与post请求基本区别
小白学习Jmeter工具前必要懂得知识点_第2张图片
Get请求:
Url:http://127.4.7.4:8080?Username=zhangsan&password=123
Post请求:
Url:http://127.4.7.4:8080
请求体:
{
[“Username ”:“zhangsan”
“password”:“123”]
}

后续实操文章会在工具中详细展示。

(6)Jmeter下载与使用环境
因为Jmeter是基于Java语言开发的,所以使用前,首先需要配备Java环境的,安装Jmeter的路径和配置Java环境的伙伴都可以参考以下博客:
https://blog.csdn.net/zl1zl2zl3/article/details/78194194

在安装完毕之后,有兴趣的可以照着文章内容的测试操作一遍,作为初次体验,会有些许成就感的。后续待我成熟运用起工具后会有更详尽地介绍。

你可能感兴趣的:(测试工具学习)