现代网站越来越多的使用前后端分离架构,先用前端 MVC 框架快速堆砌出 SPA,再用 API 获取动态数据也已经成为日常的开发内容;而用来连接前后端的 API,其重要性也自然言而喻。..."> 所支持的两个方法;GET 是使用最频繁的,无论是获取得页面还是数据,一般都会用 GET,而 POST 则常用在新增资源上,但由于 HTML 不支持其他方法,在传统网站中可能会用 POST 处里除了获取数据之外的所有事情。...DELETE 通常用在删除资源;HEAD 与 GET 类似,但只取回 Header,通常用在测试资源是否存在上;OPTION 是询问这个资源应该要怎样获取,通常用在发送 CORS 的预检(preflight...❞ SEO 当搜索引擎的爬虫在扫网站时,如果发现需要通过 POST 获取的资源,为了避免造成意外的行为或副作用,通常不会尝试爬取 POST 响应的结果。
1 接口测试的重点? 检查数据的交换,数据传递的正确性,以及接口间的逻辑依赖关系 2 GET请求和POST请求区别是什么? GET在浏览器回退时是无害的,而POST会再次提交请求。...先从上一个接口中的响应数据获取对应的返回值,然后使用正则表达式or使用JSON解析来提取需要获取的值,然后存储在一个变量中,最后在下一个接口中直接引用该变量即可,也可以叫关联技术 18 接口测试用例的编写要点有哪些...依赖登最状态的接口,本质上是在每次发送请求时需要带上存储有账户有效信息的Session或Cookie才能发送成功,在构建POST请求时headers中添加必要的Session或Cookie 20依赖于第三方数据的接口如何进行测试...,消息格式是xml,处理时要进行xml解析 27 fiddler抓取HTTPS?...第二步,服务器发回相应,Fiddler获取到服务器的CA证书, 用根证书(这里的根证书是CA认证中心给自己颁发的证书)公钥进行解密, 验证服务器数据签名, 获取到服务器CA证书公钥。
在用python进行自动化测试之前,我们今天先讲一下接口测试,如何进行接口测试,使用什么工具进行接口测试,如何使用fiddler进行抓包等等。 说到测试,我们有个金字塔模型可以了解一下。...,而且它也无法测试POST这类型的的接口,那么我们就需要找一个专业的接口测试软件:Postman。 ...开发者工具依赖于Chrome浏览器,也只能抓取Chrome浏览器发起的请求,如果我们想获取所有程序发起的请求,我们就可以通过Fiddler来抓取。 ...工作原理 Fiddler是以代理WEB服务器的形式工作的,浏览器与服务器之间通过建立TCP连接以HTTP协议进行通信,浏览器默认通过自己发送HTTP请求到服务器,它使用代理地址:127.0.0.1,...当Fiddler开启会自动设置代理, 退出的时候它会自动注销代理,这样就不会影响别的程序。不过如果Fiddler非正常退出,这时候因为Fiddler没有自动注销,会造成网页无法访问。
这些常见测试挑战都可以通过掌握一款强大工具来解决——Fiddler。本文将全面介绍软件测试工程师如何利用Fiddler进行数据抓包与分析,提升测试效率与深度。...安装过程简单,只需注意以下几点:Windows系统建议Windows 7及以上版本安装时需要.NET Framework支持建议以管理员身份运行安装程序2.2 基础配置指南首次使用Fiddler需要进行一些基本配置...注意事项:某些浏览器(如Chrome)可能使用系统代理设置,而其他浏览器可能需要手动配置使用完毕后记得恢复代理设置,否则可能导致无法上网4.2 移动设备流量抓取移动应用测试是Fiddler的重要应用场景...(如图片、视频)提高测试效率模拟尚未开发完成的接口进行前端测试高级匹配规则:使用EXACT:前缀进行精确匹配使用REGEX:前缀使用正则表达式匹配使用通配符*进行模糊匹配6.3 Fiddler Script...使用最佳实践规范化抓包流程:建立团队统一的抓包和分析流程合理使用过滤:避免捕获过多无关请求提高效率注意安全隐私:处理敏感数据时遵守公司安全政策定期清理会话:长时间抓包会导致内存占用过高结合其他工具:Fiddler
当我们需要快速定位「线上产品的接口问题」时,如果没有源码、数据、依赖服务和足够的时间去搭建一个测试环境,则通常会使用 HTTP 代理服务器来进行快速抓包调试。...需要注意的是,在 Fiddler 中使用 Replay 功能重发请求时,请求由 Fiddler 代理重新发起而非手机,因此手机 App 中的 H5 不会有任何变化。...原理上可以理解为,当我们在 PC 端的后台进行 debug 时,相关的操作被序列化成一组 JSON 字符串,数据经由通道传输给手机端中的 H5 页面,页面在接收到这些数据之后反序列化成相应的 JS 脚本操作...但使用 POST 方法时尤其要注意:「使用统一的 Content-Type」。这是一个容易被新手忽略的细节,也是接口设计中经常出错的点。...能够基于 API 数据导出生成 Postman Collections,以便导入 Postman 中进行 API 调试; Mock Server。
安全测试用例设计:cookie丶header丶唯一识别码 三丶接口测试工具 1.接口测试工具分类 抓取接口工具 httpwatch:集成于IE和Firefox浏览器中,在其他浏览器中无法使用,查看数据也比较麻烦...:接口和自动化测试工具,功能也比较强大 jmeter:跟loadrunner一样不仅仅是做性能测试,也可以对接口进行测试 postman:谷歌旗下的接口测试工具 四丶Fiddler的使用 1.抓取不同类型接口数据...,获取https://api.zhihu.com/answers接口,查看发送的post请求数据中的content字段内容也就是博主回答的内容 然后进行数据模拟,也就是点击fiddler软件上的replay...对https://api.zhihu.com/answers接口进行post请求数据的而二次发送,由于知乎这边设定对一个问题只能进行一次回答,所以知乎服务器返回的json数据提示我们失败,同时也说明对接口进行二次数据发送成功...__': unittest.main() 测试查看结果,断言失败,测试结果如下很清晰 4.unittest中case的管理及运用 在测试一些接口时,有些接口的返回数据需要在下一个接口进行使用,
比如被测代码中需要依赖第三方接口返回值进行逻辑处理,可能因为网络或者其他环境因素,调用第三方经常会中断或者失败,无法对被测单元进行测试,这个时候就可以使用mock技术来将被测单元和依赖模块独立开来,使得测试可以进行下去...比如支付宝支付的异常条件有很多,但是模拟这种异常条件很复杂或者无法模拟,比如,查询聚划算的订单结果,无法在测试环境进行模拟。...4、隔离系统 假如我们需要调用一个post请求,为了获得某个响应,来看当前系统是否能正确处理返回的“响应”,但是这个post请求会造成数据库中数据的污染,那么就可以充分利用Mock,构造一个虚拟的post...03 Mock测试示例 使用Fiddler进行Mock测试,这种调试方式适用于rest接口调试,web界面调试等。...测试工程师在做测试时,也需要服务器返回一些特殊的数据来做测试,使用 Fiddler AutoResponder功能来伪造测试数据(创建虚拟对象),能大大减少测试工程师的工作量。
—–比如被测代码中需要依赖第三方接口返回值进行逻辑处理,可能因为网络或者其他环境因素,调用第三方经常会中断或者失败,无法对被测单元进行测试,这个时候就可以使用mock技术来将被测单元和依赖模块独立开来,...—–比如,支付宝支付的异常条件有很多,但是模拟这种异常条件很复杂或者无法模拟,比如,查询聚划算的订单结果,无法在测试环境进行模拟。...(4)隔离系统 假如我们需要调用一个post请求,为了获得某个响应,来看当前系统是否能正确处理返回的“响应”,但是这个post请求会造成数据库中数据的污染,那么就可以充分利用Mock,构造一个虚拟的post...三、Mock测试示例 1、使用Fiddler进行Mock测试 ——这种调试方式适用于rest接口调试,web界面调试等。...测试工程师在做测试时,也需要服务器返回一些特殊的数据来做测试,使用 Fiddler AutoResponder功能来伪造测试数据(创建虚拟对象),能大大减少测试工程师的工作量。
1)如上图,视频分类很多,电影、电视剧、综艺、动漫等,每次都把各个频道测试一遍,比较耗时; 2)在进行视频组合查询时,各种条件组合能拉取回不同的数据,而组合的方式有上千种,如何都保证查询过滤的正确性;...; 3)线上监控:对已上线业务进行监控,当某些组合条件查询不到数据或者某些接口拉取不到数据时,能够及时提醒相关测试和开发人员。...: 作用:接口回放,回归测试; 过滤掉提取的http session中的js、css、图片等杂质; Post请求:过滤掉经过加密请求(暂不考虑),其他session保留; Get请求:api返回数据都是...3)接口参数化,在获取到接口后,可以通过接口参数的key,加上从开发或者运维那里获取到的参数值列表,进行快速参数化,所有参数进行排列组合,生成该接口全集,进行回放测试; 3.6更新接口 在使用过程中,会遇根据由于业务变动来新增...、修改、删除HTTP API的情况,所以在接口自动化测试时,我们可以通过下面两种情况来处理接口的变动; 1) 从开发那里得知有更改变化的接口,手动通过接口管理页面进行参数的删减或者直接手工新建接口,添加到队列里
不住的问题 1) 如上图,视频分类很多,电影、电视剧、综艺、动漫等,每次都把各个频道测试一遍,比较耗时; 2) 在进行视频组合查询时,各种条件组合能拉取回不同的数据,...手工提取) 2) 拿到接口后,怎么获取接口参数所有的值(通过线上数据去挨个查找?从运营平台获取数据?) ...; 3)线上监控:对已上线业务进行监控,当某些组合条件查询不到数据或者某些接口拉取不到数据时,能够及时提醒相关测试和开发人员。... c、Post请求:过滤掉经过加密请求(暂不考虑),其他session保留; d、Get请求:api返回数据都是json类型,根据response中的”Content-Type...,生成该接口全集,进行回放测试; 3.6、更新接口 在使用过程中,会遇根据由于业务变动来 新增、修改、删除HTTP API的情况,所以在接口自动化测试时,我们可以通过下面两种情况来处理接口的变动
至于Mock,其实在修改请求和响应数据哪里就已经介绍了,宏哥就是在这里简单的提一下介绍一下它的理论知识,今天主要介绍和分享的是使用Charles进行接口测试实操。2.什么是Mock?...,但使用某些接口时,可能因操作时机或方式不当导致失败,甚至污染后端存储如数据库等, 为避免系统数据库被污染,可以将接口调整为 Mock 模式,以保证数据库纯净。...,测试人员需要进行单元测试,或提前进行接口自动化测试,需要使用Mock各种请求返回的内容。...接下来就要进入今天的重点:使用Charles进行接口测试。7.Compose用Charles进行测试,我们使用的主要是Composer功能。这个和Fiddler工具类似。...:可以勾选http版本6.添加请求参数9.接口测试实战9.1POST API实战现在免费的接口很不好找,找了半天找到python里有一个,之前在Fiddler中也用的这个。
总第69篇 01|背景介绍: 我们前面的几篇推文都是针对网页版的内容进行抓取,但是有的时候当我们想要的数据没有网页版只有APP端时,这个时候该怎么办呢?是人工去摘抄我们想要的数据吗?...这里我们以获取收趣APP中热门板块为例。 当我们打开APP中的该页面时,会出现好多api.shouqu.me,Fiddler会把一个页面分成好多URL,我们的重点是找出我们真正需要的那个URL。...(带有Content-Type的api) 具体查看哪个URL是目标URL,可以通过下图的界面(Fiddler右侧界面)来获取,该界面由request和response两部分组成。...6765199.html Fiddler抓包——post请求:http://www.cnblogs.com/yoyoketang/p/6771696.html 经过上面的两篇文章以后我们对URL进行了修改...27f6e12ef281be55176934dcaf29bba0" response=requests.get(url,headers=headers) response.text 通过上面的代码对知乎APP进行数据获取
安装证书 获取 HTTPS 请求必须要验证证书。电脑端访问:http://localhost:8888/ 进行安装。 ?...有些安卓需要手动从设置里进入并导入证书,否则无法生效。 4. 测试 开启 fiddler 的状态下,打开手机随便一个 APP,应对可以正常访问,并且在 fiddler 中看到所发出的网络请求。 ?...经过操作+观察,可以定位到获取用户上传视频列表的请求是 https://api.amemv.com/aweme/v1/aweme/post/?… 从 WebForms 栏里可以查看请求的详细参数信息。...= 'https://api.amemv.com/aweme/v1/aweme/post/?...此方法截止中秋假期还是有效的,可以通过 Chrome 开发者工具进行模拟。之后能使用多久这就没法保证了,爬虫代码都不会是一劳永逸的。
在我们进行接口测试时,总会遇到各种各样的问题,比如有的时候会遇到接口文档没有或者关键信息缺失等情况,领导安排了要进行接口测试或进行接口文档梳理等工作。...遇到这样情况作为测试从业者应该尝试获取接口信息,比如询问开发团队或者查看代码库。如果实在没有文档,可能需要用一些工具来辅助分析接口的结构和数据。...比如使用抓包工具,比如Fiddler、Charles或者Wireshark,来捕获接口请求和响应,分析请求方法、参数、URL等。...如果接口有认证机制,比如OAuth、JWT,测试时需要处理token的获取和管理,这也是需要注意的地方。...二、使用抓包工具分析接口 通过工具捕获请求和响应,逆向推导接口逻辑: 工具推荐: Fiddler/Charles:抓取 HTTP/HTTPS 请求,分析请求头、参数、响应数据。
一般我会使用Fiddler抓包工具,去获取前后台的数据交互过程 1、检查发送的请求是否有问题,请求的URL是否错误,如果是URL或者是入参有问题,那就是前端bug 2、如果请求没有问题,查看后台返回的数据是否有问题...若无,则自行去咨询开发,整理接口测试规则,再将整理好的文档用邮件发送评审或开发评审 2、使用Postman工具调试接口,看接口是否是通的,如果接口没有问题,再用Fiddler等进行抓包,把需要的信息抓出来...1、GET是明文提交,key和value是跟在接口地址后面的,数据会显示出来,不安全;POST提交数据在表单里面,是隐藏起来的,相对GET来说,更加安全一点(但是也可以通过抓包工具获取信息) 2、GET...提交数据时,内容有字数限制;POST在表单里面提交数据,没有字数限制 3、GET是获取数据,POST是发送数据 7、常用的接口测试工具?...服务器上无法找到请求的资源(也可以是服务器拒绝请求但是不想给拒绝原因) 以5开头: 500 -- 表示服务器内部异常 503 -- 表示服务器正处于超负载或者正在进行停机维护,无法处理请求 504 --
,可实现全双工通信,双方可以同时主动向对方发送消息; WebSocket在建立连接时数据是通过HTTP协议传输的,但是建立之后,真正传输数据时使用的是更加可靠的TCP协议。...上述内容是对GET和POST的基本区别,不过实际使用中,这两种请求方式都可以发送和接收数据,使用哪种方式取决于具体的应用场景和数据安全性需求。...以下是一些可以采用的策略: 使用测试数据: 为了避免影响生产数据,测试应在单独的测试环境中进行。可以创建一个独立的订单,专门用于删除操作。这样即使订单被删除,也不会影响实际的业务。...操作前后对比: 在删除订单之前,可以先获取订单详情,然后再进行删除操作,在删除后再次获取订单详情,此时应返回订单不存在的错误,证明删除成功。...接口清理: 如果应用程序提供了清理或删除数据的API,可以在测试结束后使用这些API清理垃圾数据。 每种方法有其适用的场景,也有可能需要结合使用。
接口文档 登录接口 请求方式:POST 请求地址:https://api.apiopen.top/developerLogin Query参数名 类型 必需 描述 示例 e.g. name string...3、大致流程:web页面jenkins点击登录—>fiddler抓包获取登录接口URL和参数—>从fiddler查看登录接口返回的结果—>代码模拟登录接口并获取接口登录返回结果—>设计登录接口测试用例—...>断言并执行用例 4、web页面jenkins点击登录 5、fiddler抓包获取登录接口URL和参数 6、从fiddler查看登录接口返回的结果 7、代码模拟登录接口并获取接口登录返回结果 8、设计登录接口测试用例...抓取本地部署的jenkins登录请求时,抓取不到,但是百度可以抓取到,解决方法: (1)使用http://localhost.fiddler 代替http://localhost (2)使用用 http...在127.0.0.1后面加一个点号 (4)使用 http://machinename 使用机器名 (5)打开Fiddler,菜单>Fiddler Options>General>Enable IPv6
App评论相关API的过程,以及一些工具/包的基本使用(部分工具对最后尝试没有影响,但在其它场景或许有用),最后结合sqlmap进行注入尝试。...想法来源:本想写个程序获取零评论的歌曲,去占沙发…分析发现获取评论的POST请求参数有点复杂…既然花时间研究了,顺便进行一下sql注入的尝试。...目录: 一、获取相关代码 1、获取评论的HTTP请求 2、寻找主要JS文件 3、Fiddler:将JS文件替换成本地JS文件 便于调试 4、Fiddler + Burpsuite 5、具体发送请求的JS...到目前为止,的有效参数只剩下第一个 2、JSON.stringify(j7c) 和评论API相关的 就是 在代码中直接修改 : 发现页面获取的评论 出现偏移(首页热门评论消失,时间排序从第2条开始获取...: 注意:Js2Py无法识别JS用法: 使用发生错误,还有很多JS的用法Js2Py不能识别。
想法来源:本想写个程序获取零评论的歌曲,去占沙发…分析发现获取评论的POST请求参数有点复杂…既然花时间研究了,顺便进行一下sql注入的尝试。...评论的分页功能一般会用到的参数:第几页、获取几条 等等。 但此处POST请求参数并不简单,直接加密成了一长串字符串。 ? 2、寻找主要JS文件 ?...和评论API相关的 就是 ? 在代码中直接修改 offset: ? 发现页面获取的评论 出现偏移(首页热门评论消失,时间排序从第2条开始获取)。 到这里就和平时进行sql注入的情形很像了。...注意:Js2Py无法识别JS用法: ? 使用发生错误,还有很多JS的用法Js2Py不能识别。 想先将JS进行简化,再进行转换尝试。 2、Closure Compiler:JS简化压缩(失败尝试) ?...对于应用开发来说,即使在前端对参数值进行加密,后端在使用中依然需要进行过滤。
moco是一个搭建模拟服务器的工具,其支持API和独立运行两种方式。 API运行:通常是在junit等测试框架中使用 独立运行:是通过一个jar包开启服务 2.moco能解决什么问题?...这样,降低测试开发效率。 这时,如果测试人员使用moco框架,就可以在接口文档输出后,在接口开发完成前,设计用例过程中,使用moco搭建一个模拟服务器。...启动服务之后便可以在浏览器中进行测试接口,输入地址:http://127.0.0.1:8801/login 会返回上述config.json文件中定义的文本内容,此处使用postman进行测试,其返回结果如下...HttpRunner 做接口自动化测试 为何Android 7.0 以上Charles和Fiddler无法抓取HTTPS包?...Fiddler对安卓App抓包(逍遥模拟器APP) AWS与Docker 如何使用AWS EC2+Docker+JMeter构建分布式负载测试基础架构 Docker容器数据持久化和容器网桥连接 Docker