文章目录
- 总目录
- 功能测试与数据库、Fiddler
-
- 今日目标
- 1、功能测试与数据库
-
- 1.1 项目与数据库的关系
- 1.2 数据库典型应用场景(重点)
-
- 1.2.1 验证数据的准确性与完整性
- 1.2.2 借助数据库进行缺陷定位
- 1.2.3 借助数据库构造测试场景(需要特定的测试数据)
- 1.2.4 借助数据库数据备份更新
- 2、功能测试与抓包工具
-
- 2.1 HTML与HTTP协议
-
- 2.1.1 URL
- 2.1.2 HTML
- 2.1.3 HTTP
- 2.2 HTTP请求与响应
-
- 2.2.1 基本概念
- 2.2.2 HTTP请求
- 2.2.3 HTTP响应
- 面试题:GET和POST的区别
- 2.3 抓包工具
-
- 2.3.1 Fiddler原理
- 2.3.2 Fiddler安装
- 2.3.3 Fiddler使用
-
- 2.3.3.1 抓包(Inspectors)
- 2.3.3.2 删除请求
- 2.3.3.3 设置过滤
- 2.3.3.4 设置断点
- 2.3.3.5 AutoResponder(扩展)
- 2.3.3.6 Composer(扩展)
- 2.3.3.7 弱 测试(扩展)
- 2.3.3.8 HTTPS请求(扩展)
- 今日总结
- 项目作业
- WEB手工阶段复习
总目录
测试开发系列(功能+接口+性能+自动化)
功能测试与数据库、Fiddler
今日目标
- 掌握功能测试涉及到的四种数据库场景
- 了解HTML和HTTP协议
- 熟悉HTTP请求和响应的内容
- 熟悉HTTP请求方法get和post
- 了解fiddler的应用场景
- 掌握fiddler过滤功能的使用
- 掌握fiddler修改请求数据方法
1、功能测试与数据库
1.1 项目与数据库的关系
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-P5xmyfun-1619756942684)(image/image-20200625114930401.png)]
-
项目中的数据是存储在数据库中的
-
对数据库修改(增删改查)会影响项目页面显示
-
实操练习:
-
修改数据库中“小米手机5,十余项黑科技,很轻狠快”的商品名称,在前台页面看到变化
1、数据表 tp_goods
2、字段 goods_name
3、操作语句 update 表名 set 字段名 = 字段值 where 条件修改前:
select * from tp_goods where goods_name = ‘小米手机5,十余项黑科技,很轻狠快’ – 精确查询
select * from tp_goods where goods_name like ‘小米手机5%’ – 模糊查询修改:
update tp_goods set goods_name = ‘小米手机55’ where goods_name = ‘小米手机5,十余项黑科技,很轻狠快’修改后:
select * from tp_goods where goods_name = ‘小米手机5,十余项黑科技,很轻狠快’ – 精确查询
select * from tp_goods where goods_name like ‘小米手机5%’ -
1.2 数据库典型应用场景(重点)
- 验证数据的准确性与完整性
- 借助数据库进行缺陷定位
- 借助数据库构造测试场景(需要特定的测试数据)
- 借助数据库数据备份更新
1.2.1 验证数据的准确性与完整性
- 执行用例过程中,有时需要到数据库验证数据的准确性与完整性
1.2.2 借助数据库进行缺陷定位
- 进行BUG定位时,有时需要到数据库查看数据的详细信息
-
示例:
-
格式:
- 协议:客户端和服务器通讯的标准,http、https、ssh等
- ip或域名
- 端口 :协议默认的端口 是可以省略的
- http:默认端口80
- https:默认端口443
- ssh:默认端口22
- …
- 资源路径:资源存放的位置,资源可以是各种超文本信息,如音频、视频等
- 参数(如)
- 格式:
- 用RL的主体部分分开
- 参数的格式,有多个参数时用&拼接即可
- 格式:
2.1.2 HTML
HTML:HyperText Markup Language ,超文本标记语言
- 超文本:声音、视频、图片、超链接等
- 标记:就是通过【内容标记符>】的格式让内容具有不同的表现形式,从而达到超文本的目的
-
如:
-
互联 上浏览的 页,本质上就是超文本标记语言。
-
2.1.3 HTTP
HTTP: HyperText Transfer Protocol ,超文本传输协议,是互联 上最常用的协议之一。
2.2 HTTP请求与响应
请求方式(GET 和 POST)
- get:用于查询,如搜索商品
- post:用于提交数据,相对比较安全,如登录、注册等
2.2.3 HTTP响应
-
响应内容
-
响应行:位置是在第一行,包含协议及版本、响应状态码、状态消息
-
响应头:位置是在第一行之后,到空行之前,告诉客户端服务器相关信息,如web服务器类型等
-
响应体:位置是在空行之后,如登录成功
-
-
响应状态码:由3位数字组成,第一位数字代表响应消息的级别
- 2XX:成功,如200
-
3XX:重定向,如301
- 4XX:客户端存在问题,如404
-
5XX:服务器端存在问题,如501
面试题:GET和POST的区别
- 最直观的区别就是GET把参数包含在URL中,POST通过request body(请求体)传递参数。
- GET比POST更不安全,因为参数直接暴露在URL上,所以不能用来传递敏感信息。
- GET在浏览器回退时是无害的,而POST会再次提交请求。
- GET请求只能进行url编码,而POST支持多种编码方式。
- GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。
- GET请求在URL中传送的参数是有长度限制的,而POST么有(注意:这个限制是由浏览器导致)。
- 对参数的数据类型,GET只接受ASCII字符,而POST没有限制。
- GET参数通过URL传递,POST放在Request body中。
2.3 抓包工具
功能测试与Fiddler
-
通过抓包工具截取观察 站的请求信息,帮助我们更深入的了解 站
-
通过抓包工具截取、观察 站的请求与返回信息,帮助测试进行BUG定位与描述
-
通过抓包工具拦截修改请求信息,绕过界面的限制,测试服务端的功能
2.3.1 Fiddler原理
- 原理:
- 请求先发送给Fiddler,Fiddler接收请求后转发给服务器
-
请求
-
请求行
-
请求头
-
请求体
-
-
响应
- 响应行
- 响应头
- 响应体
-
菜单删除:
-
命令行删除:cls、clear
-
键盘delete
-
快捷键:Ctrl + X
-
点击Filters页签,勾选“Use Filters”
-
Hosts下方的第二个下拉框,选择“Show Only the following Hosts”
-
在下方输入框中输入要抓包的主机地址(多个地址用英文分 隔开,如:localhost;127.0.0.1)
-
点击右上角的“Actions”,选择“Run Filterset Now”
-
如果取消过滤,去掉“Use Filters”的勾选
-
修改请求
-
进入添加会员的页面,填写正确的手机 码和其他信息
-
打开fiddler拦截开关:Rules ==》 Automatic Breakpoints ==》 Before Requests
-
回到添加会员界面,点击提交按钮
-
回到Fiddler,修改【请求体】,如修改手机 码内容
-
点击Fiddler中请求下方的绿色按钮“Run to Completion”
-
关闭Fiddler拦截开关:Rules ==》 Automatic Breakpoints ==》 Disabled
-
-
修改响应(扩展)
- 进入添加会员的页面,填写正确的手机 码和其他信息
- 打开fiddler拦截开关:Rules ==》 Automatic Breakpoints ==》 After Responses
- 回到添加会员界面,点击提交按钮
- 回到Fiddler,修改【响应体】,如修改【操作提示】的内容
- 点击Fiddler中请求下方的绿色按钮“Run to Completion”
- 关闭Fiddler拦截开关:Rules ==》 Automatic Breakpoints ==》 Disabled
2.3.3.5 AutoResponder(扩展)
-
自动响应
1.进入AutoResponder
2.选择列表左侧请求,点击【Add Rule】添加mock请求(或点击【Add Rule】手动填写请求地址)
3.选择响应结果,模拟测试场景(此处支持打开本地文件,根据文件内响应数据(例如json文件)进行mock)
4.点击右下角【save】,保存响应设置
5.勾选上方选项:
(1)Enable rules:开启或禁用自动重定向功能,勾选上时,激活规则
(2)Unmatched requests passthrough:未匹配的请求穿透,即勾选上时,不影响那些没满足我们处理条件的请求
(3)勾选了这个选项,在规则里面就可以设置是立即返回响应,还是隔多少毫秒返回响应
2.3.3.7 弱 测试(扩展)
-
手机访问APP,或者用手机浏览器访问 络,观察功能响应或者页面刷新速度
-
如果需要自定义 络的速度,需要到自定义规则中配置(Rules → Customize Rules)
络环境测试机带宽参考测试数据:
今日总结
-
掌握功能测试涉及到的四种数据库场景
-
了解HTML和HTTP协议
-
熟悉HTTP请求和响应的内容
-
熟悉HTTP请求方法get和post
-
了解fiddler的应用场景
-
掌握fiddler过滤功能的使用
-
掌握fiddler修改请求数据方法
项目作业
WEB手工阶段复习
- 手工测试复习:xmind
- 面试题
文章知识点与官方知识档案匹配,可进一步学习相关知识MySQL入门技能树数据库组成表32114 人正在系统学习中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!
-
-
详情见我另一篇博文
2.3.3.2 删除请求
2.3.3.3 设置过滤