浏览器F12调试

系列文章目录

提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加
例如:第一章 Python 机器学习入门之pandas的使用


提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 系列文章目录
  • 1 浏览器F12开发者工具
    • 1.1 F12开发者工具基本介绍
    • 1.2 F12常规设置
  • 2 标签页
    • 2.1 Elements 查看器
    • 2.2 Network 网络
    • 2.3 Network抓包分析
      • 案例1: 以登录百度账号为例
      • 案例2: 登录账号
      • 案例3: 问题定位分析
      • 如何定位前端问题和后端问题?
    • 2.4 接口测试和数据篡改
    • 2.5 和postman、jmeter等工具的结合使用
    • 2.6 Recorder 记录器
    • 2.7 Application 应用
      • 存储
      • cookies
    • 2.8 Console 控制台
    • 2.9 Performance 性能
    • 2.10 小结


1 浏览器F12开发者工具

1.1 F12开发者工具基本介绍

在这里插入图片描述

1.2 F12常规设置

1)显示的位置调整:靠右靠左靠下独立窗口
在这里插入图片描述
2)设置颜色和语言(chrome)
在这里插入图片描述

3)手机版本的切换,适合测试H5页面小程序测试,可以方便在电脑操作和调试;也可以选择尺寸和不同的手机型号
在这里插入图片描述

2 标签页

在这里插入图片描述

英文中文
Elements查看器
Console控制台
Sourse源代码/调试器
Network网络
Performance性能
Memory内存
Application应用
Recorder记录器
Performance insights性能数据分析
  • 查看器:主要用来做元素的定位

  • 控制台:调试错误等

  • 源代码:前端代码的调试,断点等

  • 网络:测试用来抓包、进行分析进行一些测试问题的定位

  • 性能:前端页面的性能

  • 应用:存储cookie缓存等

2.1 Elements 查看器

在这里插入图片描述
在这里插入图片描述
1.查看元素的代码
点击左上角的箭头图标(或按快捷键Ctrl+Shft+C)进入选择元素模式,然后从页面中选择需要查看的元素,然后可以在开发者工具元素(Elements) -栏中定位到该元素源代码的具体位置。
在这里插入图片描述
2.查看元素的属性
定位到元素的源代码之后,可以从源代码中读出该元素的属性。如class、 src、 width等属性的值。
3.修改元素的代码与属性

  • 点击元素,然查看右键菜单,可以看到chrome提供的可对元素进行的操作:选择Edit as
    HTML选项时,元索进入编辑模式,可以对元素的代码进行任意的修改
  • 当然,这个修改也仅对当前的页面渲染生效,不会修改服务器的源代码,所以这个功能也是作为调试页面效果而使用。

在这里插入图片描述
结果如下:
在这里插入图片描述

2.2 Network 网络

在这里插入图片描述

网络协议–01–HTTP协议
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

2.3 Network抓包分析

案例1: 以登录百度账号为例

在这里插入图片描述
双击查看详细报文消息内容:
在这里插入图片描述

标头(消息头):

  • 常规(请求网址、请求方法、状态代码)
  • 响应头
  • 请求头
    在这里插入图片描述

载荷(请求体):

可看到登录输入的手机号和验证码
在这里插入图片描述

响应(响应体)

在这里插入图片描述

时间

在这里插入图片描述

cookie:

在这里插入图片描述

案例2: 登录账号

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

案例3: 问题定位分析

抓不到登录的这个post请求:

  • 保留日志:开启后,重新加载url,或者跳转了页面之后,之前的请求显示资源信息依然会保留下来,不会清空;
  • 停用缓存:开启后,页面资源不会存入缓存,可以在status栏的状态码看文件请求状态。
    在这里插入图片描述
  • 输入账号提示“账号不存在”,如果没抓到包,证明是前端页面给出的提示
  • 抓到POST请求的包了,证明是后端返回的提示
    在这里插入图片描述
    在这里插入图片描述

如何定位前端问题和后端问题?

步骤:
1.明显的前端js问题
在这里插入图片描述
2.抓包分析:
1)前端没有发送请求 --前端问题
2)前端发送请求了,但是前端发送内容的数据错误 --前端问题
3)前端发送了正确请求,后端没有给响应消息 --后端问题
4)前端发送了正确请求,后端也响应消息了,但是响应的数据错误 --后端问题
5)前端发送了正确请求,后端给出了正确响应,但前端没有正确显示 --前端问题
有时需要配合数据库确认+Linux服务器分析项目日志

2.4 接口测试和数据篡改

接口测试(数据篡改) :(以谷歌浏览器为例)
右键后点击复制,以fetch格式复制,粘贴到控制台

  1. 可以修改捕获到的请求的数据(参数),对接口的正常数据+异常数据进行测试。
  2. 回车发送接口请求
  3. 检查响应结果
    在这里插入图片描述
    可修改请求体的数据或参数(例如将用户名输入错误),回车键发送请求:
    在这里插入图片描述
    检查响应结果:
    在这里插入图片描述

使用场景: 前端检查了一些异常数据报错,接口层面是否也有检测这种异常数据的能力呢?所以要对接口进行这些异常数据的测试检查。

2.5 和postman、jmeter等工具的结合使用

复制为curl命令(linux)可以在postman里粘贴使用–import里进行粘贴
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

复制为HAR格式/所有内容保存为HAR模式,可以导入到其他工具使用,比如Metersphere工具
导入HAR文件:

F12可以导入其他工具导出的HAR文件。

  • 测试:HAR文件导出 给到开发进行问题的定位! --问题复现 修复bug

在这里插入图片描述

2.6 Recorder 记录器

录制按钮- -chrome 98版本后才有的功能

录制脚本的用途(导入和导出):
测试的时候一些重复性的工作可以录制下来进行回放;也可以保存后导入进行repaly (重放)。

  1. 录制并进行replay
  2. 导出给开发进行replay复现bug
  3. 导入进行replay
  4. 还可以进入分析性能页面

注意:功能还是试用性功能,还在完善中,大家选择进行使用!
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.7 Application 应用

存储

在这里插入图片描述
在这里插入图片描述

cookies

在这里插入图片描述

cookies用户鉴权:

  1. 登录一次过后用户的一些信息保存到服务器里,以session的形式,也就是会话,服务器这边的会话也有一定的时效
  2. 服务器会把session的一些信息通过set cookies字段发送给客服端
  3. 客户端保存到浏览器里面,也就是以cookies的形式保存。 --和session配套使用。
    在这里插入图片描述

2.8 Console 控制台

在这里插入图片描述
在这里插入图片描述
1)执行js语句
在这里插入图片描述
2)查看cookies信息
查看当前网站的cookie
在这里插入图片描述
设置cookie值
例如:

document.cookie = "csrf_token=12435332355"

2.9 Performance 性能

在这里插入图片描述
案例:

  • 点击●可以开始录制, 它会记录用户的交互以及这些交互对页面性能数据的影响,当交互完成后,
  • 点击Stop来停止Record ,Performance面板会展示出刚才录制的页面性能数据

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.10 小结

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机二级C语言备考学习记录

一、C语言程序的结构 1.程序的构成,main函数和其他函数。 程序是由main函数和其他函数构成main作为主函数,一个C程序里只有一个main函数其他函数可以分为系统函数和用户函数,系统函数为编译系统提供,用户函数由用户自行编写 2.…

【Linux】学习-进程信号

进程信号 信号入门 生活角度的信号 你在网上买了很多件商品,再等待不同商品快递的到来。但即便快递没有到来,你也知道快递来临时,你该怎么处理快递。也就是你能“识别快递”,也就是你意识里是知道如果这时候快递员送来了你的包裹,你知道该如何处理这些包裹当快递员到了你…

软考 系统分析师系列知识点之信息系统战略规划方法(5)

接前一篇文章:软考 系统分析师系列知识点之信息系统战略规划方法(4) 所属章节: 第7章. 企业信息化战略与实施 第4节. 信息系统战略规划方法 7.4.3 战略集合转化法 战略目标集合转化法(Strategy Set Transformation&a…

day37 闭包、变量提升

目录 闭包变量提升函数提升 闭包 闭包(closure)是一个函数以及其捆绑的周边环境状态(lexical environment,词法环境)的引用的组合。换而言之,闭包让开发者可以从内部函数访问外部函数的作用域。在 JavaScr…

Oracle数据字典学习1

之前查看了几个用户的默认表空间,是从user_users来查看的; 根据资料; ORACLE中数据字典视图分为3大类,用前缀区别,分别为:USER,ALL 和 DBA; 许多数据字典视图包含相似的信息; USER_…

【PyQt】10 QLineEdit

文章目录 前言一、回显模式(EchoMode)1.1 四种回显模式1.2 代码展示运行结果 二、校验器2.1 代码2.2 运行结果 三、通过掩码限制输入3.1 代码3.2 运行结果 总结 前言 1、QLineEdit 可以输入单行文字 2、回显模式 3、校验器 4、掩码输入 一、回显模式&am…

Blazor SSR/WASM IDS/OIDC 单点登录授权实例3-服务端管理组件

目录: OpenID 与 OAuth2 基础知识Blazor wasm Google 登录Blazor wasm Gitee 码云登录Blazor SSR/WASM IDS/OIDC 单点登录授权实例1-建立和配置IDS身份验证服务Blazor SSR/WASM IDS/OIDC 单点登录授权实例2-登录信息组件wasmBlazor SSR/WASM IDS/OIDC 单点登录授权实例3-服务端…

黄金交易策略(Nerve Nnife.mql4):1秒救地球的第六单

一轮趋势做单&#xff0c;正常情况是5单便可以完成一轮盈利。但当开仓后快速追加5单也无法止盈的话&#xff0c;我们得找准极其苛刻的条件开出第6单&#xff0c;并指望完成利润覆盖。代码如下&#xff1a; if(count > 5 && count < 10 && isDown(small_…

《CSS 简易速速上手小册》第9章:CSS 最佳实践(2024 最新版)

文章目录 9.1 维护大型项目的 CSS9.1.1 基础知识9.1.2 重点案例&#xff1a;构建一个可复用的 UI 组件库9.1.3 拓展案例 1&#xff1a;优化现有项目的 CSS 结构9.1.4 拓展案例 2&#xff1a;实现主题切换功能 9.2 BEM、OOCSS 和 SMACSS 方法论9.2.1 基础知识9.2.2 重点案例&…

推荐系统|召回04_离散特征处理

离散特征处理 离散特征是什么 怎么处理离散特征 One-hot编码 Embedding嵌入 从one-hot到Embedding&#xff0c;已经节省了很多的存储空间&#xff0c;但当数据量大的时候&#xff0c;还是占空间&#xff0c;所以工业界仍会对Embedding进行优化 而一个物品所对应的Embedding参数…

ESP8266-01S模块连接服务器(ONENET)

ESP8266-01S模块连接服务器&#xff08;ONENET&#xff09; 固件烧录通过http协议连接onenet云平台 固件烧录 一般在esp8266到手之后会进行测试&#xff0c;以确保能用&#xff0c;该模块出厂时默认自带出厂固件的&#xff0c;但如果进行了开发即下载了自己写的程序&#xff0…

Java:常用API接上篇 --黑马笔记

一、 StringBuilder类 StringBuilder代表可变字符串对象&#xff0c;相当于是一个容器&#xff0c;它里面的字符串是可以改变的&#xff0c;就是用来操作字符串的。 好处&#xff1a;StringBuilder比String更合适做字符串的修改操作&#xff0c;效率更高&#xff0c;代码也更…