从零开始的软件测试学习之旅(六)测试网络基础知识

测试网络基础知识

    • HTTP和HTML
    • URL
    • DNS
    • 客户端和服务器
    • 请求方法和状态码
    • 面试高频
    • Fiddler抓包工具教学
    • 弱网

HTTP和HTML

概念 html: HyperText Markup Language 超文本标记语言
http: HyperText Transfer Protocol 超文本传输协议
超文本: 图片, 音频, 视频
关系:http 可以对 html 的内容进行网络传输

URL

概念: uniform resource locator 统一资源定位符
格式 协议://IP地址:端口号/资源路径http://127.0.0.1:8081/hello; http://localhost
默认监听端口是80, 默认端口号是可以省略的
常见的协议类型: http/ https/ ftp/ ssh/ IMAP/ POP3/ …

DNS

概念:是域名系统 (Domain Name System), 是因特网的一项核心服务作用 它可以将 域名 和 IP地址 相互关联起来

客户端和服务器

概念
客户端client 用户端, 用户使用的程序, 如 B/S 架构中的浏览器, C/S 架构中的手机app
服务器server 对外提供服务的, 解决资源或数据

web服务器:提供web访问
文件服务器:提供文件服务
数据库服务器:提供数据库存储

请求与响应

请求:request , 客户端向服务器索取数据的一种行为
响应:response, 服务器对客户端的请求作出的反应, 一般指返回数据(或者html文档)给客户端

请求
URL, 请求方法 浏览器信息, 支持语言等 请求参数
在这里插入图片描述

响应
http协议和版本, 状态码 web服务器信息, 响应内容的类型, 响应内容长度等 http响应的具体内容

在这里插入图片描述

请求方法和状态码

请求方法
GET:请求的参数放在 URL 中, 典型应用场景就是查询
POST:请求的参数放在请求体中, 更安全
状态码
1xx: 指示信息–表示请求已经接受, 继续处理
2xx: 成功–表示请求已经被成功接收, 理解, 接受
3xx:重定向–要完成请求必须进行更进一步的操作
4xx:客户端错误–请求有语法错误或请求无法实现
5xx:服务端错误–服务器为难实现合法的请求

面试高频

get与post区别

最直观的区别就是GET把参数包含在URL中, POST通过 request body (请求体) 传递参数

GET比POST更不安全, 因为参数直接暴露在URL中, 所以不能用来传递敏感信息
GET请求在URL中传递的参数的长度是有限制的, 而POST没有

GET请求适合用于获取数据,不适合传输敏感信息,而POST请求则适合用于提交数据,可以传输较大量的数据,安全性更高。

Fiddler抓包工具教学

fiddler 是一个 http 调试代理工具, 它能够记录并检查所有你的电脑和互联网之间的通信
注意: fiddler 是用 C# 编写的, 所以安装运行会依赖 Microsoft .Net Framework

原理:代理服务器从中接受过滤客户端的信息

未使用前

在这里插入图片描述

使用后

在这里插入图片描述

基础操作

1.抓取数据包 2.过滤数据包 3.删除数据包

抓取数据包

1.打开 fiddler
2. 配置 fiddler 和 浏览器代理
3. 通过浏览器发起请求
4. 查看捕捉的数据包
HTTPS抓包配置
fiddler 默认不开启 https 抓包, 需手动配置
1. Tools -> Options -> HTTPS
2. 选中"Decrpt HTTPS traffic", Fiddler就可以截获HTTPS请求, 第一次会弹出证书安装提示, 若没有弹出提示, 勾选 Actions -> Trust Root Certificate, 默认安装即可
3. 勾选 “Ignore servercertificate errors (unsafe)”
浏览器代理配置

在这里插入图片描述

fiddler默认不开启https抓包,需配置

在这里插入图片描述

在这里插入图片描述

过滤数据包

在这里插入图片描述

删除数据包

三种方式
1.工具栏中 X 按钮 -> remove all
2.底部命令行输入 clear 或者 cls
3.选中数据包 -> 点击键盘上的 DELETE 或者右键 Remove (按条件删除所选的/未选的/所有的)

典型应用场景

场景和作用
1.抓包:辅助定位bug
2.改包:涉及接口测试/ 安全测试
3.弱网:专项测试
4.前端性能分析:分析前端性能

抓包

在这里插入图片描述

改包

步骤
1.浏览器发起请求
2.fiddler记录请求, 并把请求拖到 composer , 进行修改
3.在 composer 中, 点击 Excute , 发送模拟请求
4.在 fiddler 中查看响应

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

拦截并修改

在这里插入图片描述

在这里插入图片描述

演示视频如下

请求保存到本地

1.保存请求, fiddler回话列表, 某一个请求右键 -> Save -> Request -> Entire Request
用法1: 查看
用法2: 放到composer中, 重新请求

2.[用法2]使用请求, 把保存的请求的内容复制到 composer , 修改或直接执行

模拟响应

步骤
1.浏览器发起请求, fiddler 抓包
2.使用 fiddler 的 AutoResponder 修改响应的规则, 自动模拟响应
3.(可能需要清除浏览器缓存), 并再次使用浏览器发起请求
4.浏览器查看响应

在这里插入图片描述

弱网

1.Rules -> Customize Rules… 点击
2.进入到编辑脚本中, 修改限速, 保存
修改每KB的上传延迟, 默认 300ms
修改每KB的下载延迟, 默认 150ms

if (m_SimulateModem) {// Delay sends by 300ms per KB uploaded.oSession["request-trickle-delay"] = "3000"; // Delay receives by 150ms per KB downloaded.oSession["response-trickle-delay"] = "1500"; }

3.启动限速 Rules -> Performance -> Simulate Modem Speeds 点击
4.发起请求, 并查看响应效果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3016718.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

毕业就业信息|基于Springboot+vue的毕业就业信息管理系统的设计与实现(源码+数据库+文档)

毕业就业信息管理系统 目录 基于Springboot+vue的毕业就业信息管理系统设计与实现 一、前言 二、系统设计 三、系统功能设计 1学生信息管理 2 公司信息管理 3公告类型管理 4公告信息管理 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设…

鸿蒙内核源码分析(任务切换篇) | 看汇编如何切换任务

在鸿蒙的内核线程就是任务,系列篇中说的任务和线程当一个东西去理解. 一般二种场景下需要切换任务上下文: 在线程环境下,从当前线程切换到目标线程,这种方式也称为软切换,能由软件控制的自主式切换.哪些情况下会出现软切换呢? 运…

优雅的实现接口统一调用!

有些时候我们在进行接口调用的时候,比如说一个 push 推送接口,有可能会涉及到不同渠道的推送。 比如做结算后端服务的,会与金蝶财务系统进行交互,那么我结算后端会涉及到多个结算单类型,如果每一个种类型的结算单都去…

Java基础教程 - 4 流程控制

更好的阅读体验:点这里 ( www.doubibiji.com ) 更好的阅读体验:点这里 ( www.doubibiji.com ) 更好的阅读体验:点这里 ( www.doubibiji.com ) 4 流程控制 4.1 分支结构…

新型中医揿针如何降血糖呢?

点击文末领取揿针的视频教程跟直播讲解 “新型针贴”专用揿针是为“埋针疗法”特制治的一种特殊针具,它是古代针刺留针方法的发展。具体来说,它是将特制针具刺入皮内,固定后留置一定时间,利用其持续微弱的刺激作用来治疗疾病的一…

JSP企业快信系统的设计与实现参考论文(论文 + 源码)

【免费】JSP企业快信系统.zip资源-CSDN文库https://download.csdn.net/download/JW_559/89277688 JSP企业快信系统的设计与实现 摘 要 计算机网络的出现到现在已经经历了翻天覆地的重大改变。因特网也从最早的供科学家交流心得的简单的文本浏览器发展成为了商务和信息的中心…

一文了解栈

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、栈是什么?二、栈的实现思路1.顺序表实现2.单链表实现3.双向链表实现 三、接口函数的实现1.栈的定义2.栈的初始化3.栈的销毁4.入栈5.出栈6.返回栈…

Mybatis-Plus快速上手

依赖 <dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.4.3</version> </dependency> <dependency><groupId>mysql</groupId><artifactId&g…

Git系列:git push (-u) 与 git branch (-u)

&#x1f49d;&#x1f49d;&#x1f49d;欢迎莅临我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」…

景源畅信:个人抖音小店怎么开通?

在数字时代的浪潮中&#xff0c;个体创业已不再是遥不可及的梦想。特别是随着短视频平台的崛起&#xff0c;抖音不仅成为人们娱乐消遣的新宠&#xff0c;更是众多创业者眼中的“新大陆”。你是否也曾憧憬过在抖音上开一家属于自己的小店?那么&#xff0c;如何开通个人抖音小店…

ISIS的基本配置

1.IS-IS协议的基本配置&#xff08;1&#xff09; 2.IS-IS协议的基本配置&#xff08;2&#xff09; 3.IS-IS协议的基本配置&#xff08;3&#xff09; 4.案例&#xff1a;IS-IS配置 R1的配置如下&#xff1a; [AR1czy]isis 1 [AR1czy-isis-1]is-level level-1 [AR1czy-isis-…

矩阵的压缩存储介绍

引入 概述 特殊矩阵的压缩 对称矩阵 三角矩阵 对角矩阵 稀疏矩阵 三元组存储 十字链表法 示例

通过 Java 操作 redis -- String 基本命令

关于 redis String 类型的相关命令推荐看 Redis - String 字符串 要想通过 Java 操作 redis&#xff0c;首先要连接上 redis 服务器&#xff0c;推荐看通过 Java 操作 redis -- 连接 redis 本博客只介绍了一小部分常用的命令&#xff0c;其他的命令根据上面推荐的博客也能很简单…

计算图:深度学习中的链式求导与反向传播引擎

在深度学习的世界中&#xff0c;计算图扮演着至关重要的角色。它不仅是数学计算的图形化表示&#xff0c;更是链式求导与反向传播算法的核心。本文将深入探讨计算图的基本概念、与链式求导的紧密关系及其在反向传播中的应用&#xff0c;旨在为读者提供一个全面而深入的理解。 计…

深度学习之基于Matlab卷积神经网络验证码识别系统

欢迎大家点赞、收藏、关注、评论啦 &#xff0c;由于篇幅有限&#xff0c;只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 一、项目背景 随着互联网的发展&#xff0c;验证码作为一种常用的安全验证手段&#xff0c;被广泛应用于各种网站和…

基于FPGA的AD7705芯片驱动设计VHDL代码Quartus仿真

名称&#xff1a; 软件&#xff1a;Quartus基于FPGA的AD7705芯片驱动设计VHDL代码Quartus仿真&#xff08;文末获取&#xff09; 语言&#xff1a;VHDL 代码功能&#xff1a; AD77025芯片控制及串口输出 1、使用FPGA控制AD77025芯片&#xff0c;使其输出AD值 2、将数据计…

多长时间能学成黑客,达到找漏洞赚钱的地步?

想要成为黑客&#xff0c;要学的东西有很多很多简单罗列一些基本的吧 1、SQL注入 了解SQL注入发生原理&#xff0c;熟悉掌握sqlmap工具&#xff0c;学会手工注入2、暴力破解 懂得利用burpsuite等软件进行暴力破解3、XSS 学会XSS三种攻击方式&#xff1a;反射型、存储型、dom型…

独立开发,做的页面不好看?我总结了一些工具与方法

前言 我有时候会自己开发一些项目,但是不比在公司里面,自己开发项目的时候没有设计稿,所以做出来的页面比较难看。 开发了几个项目之后,我也总结了以下的一些画页面的资源或者方法,希望对大家有帮助~ 颜色&字体 这一部分主要参考的是antd的方案,主要包括颜色与字…

Python数据爬取超简单入门

## 什么是网络爬虫&#xff1f; 网络爬虫是一种自动浏览器程序&#xff0c;能够自动地从互联网获取数据。爬虫的主要任务是访问网页&#xff0c;分析网页内容&#xff0c;然后提取所需的信息。爬虫广泛应用于数据收集、数据分析、网页内容监控等领域。 ## 爬虫的基本步骤 1.…

25考研英语长难句Day02

25考研英语长难句Day02 【a.词组】【b.断句】 如果你是你讲话对象中的一员&#xff0c;你就能了解你们大家共同的经历和问题&#xff0c;你也可以顺便评论一下食堂里难吃的食物或董事长臭名昭著的领带品味。 【a.词组】 单词解释addressv. 演说&#xff0c; 演讲&#xff1b;…