您好,欢迎光临有路网!
HTTP抓包之接口自动化测试
QQ咨询:
有路璐璐:

HTTP抓包之接口自动化测试

  • 作者:肖佳
  • 出版社:人民邮电出版社
  • ISBN:9787115534316
  • 出版日期:2020年12月01日
  • 页数:260
  • 定价:¥69.00
  • 分享领佣金
    手机购买
    城市
    店铺名称
    店主联系方式
    店铺售价
    库存
    店铺得分/总交易量
    发布时间
    操作

    新书比价

    网站名称
    书名
    售价
    优惠
    操作

    图书详情

    • 出版社
    • ISBN
      9787115534316
    • 作者
    • 页数
      260
    • 出版时间
      2020年12月01日
    • 定价
      ¥69.00
    • 所属分类
    内容提要
    本书内容来自作者多年从事接口测试的经验总结,贴近实际,能帮助读者解决实际工作中的难题。本书的主要内容有HTTP的基础知识;如何使用Fiddler来抓HTTP包;如何分析HTTP包;如何通过JMeter和Postman等发送HTTP包,从而实现软件自动化测试和接口的自动化测试;如何使用抓包工具来实现**测试和性能测试等;几个日常生活中应用比较广泛的综合实例。 本书图文并茂、实例丰富,方便读者参考并动手实践,适合前端开发工程师、测试工程师、线上故障技术人员、接口开发人员和Web开发人员阅读。
    目录
    第 1章 抓包的用处 1 1.1 Fiddler抓包的应用 1 1.2 学习HTTP 2 1.2.1 HTTP请求的结构 3 1.2.2 HTTP响应的结构 3 1.3 爬虫 3 1.4 Fiddler在测试中的作用 5 1.4.1 抓包用于性能测试 5 1.4.2 抓包用于**测试 5 1.4.3 抓包用于接口测试 6 1.4.4 大量制造测试数据 6 1.4.5 异常测试 6 1.4.6 排除故障和定位Bug 6 1.5 前端开发人员使用Fiddler调试Web 8 1.5.1 后端接口Mock 8 1.5.2 AJAX调试 9 1.5.3 线上调试 9 1.6 后端开发人员使用Fiddler抓包 9 1.7 **测试 9 1.8 检查网站的简单问题 10 1.8.1 Fiddler检查404错误 10 1.8.2 Fiddler检查大响应 10 1.9 自动化小工具的开发 11 1.9.1 购票助手 11 1.9.2 自动申请账号工具 12 1.9.3 Fiddler找回密码 12 1.9.4 网络游戏助手 13 1.10 概念的区别 13 1.10.1 抓包和录制的区别 13 1.10.2 自动化测试和爬虫的区别 13 1.10.3 自动化测试和外挂的区别 13 1.11 本章小结 13 第 2章 Fiddler如何抓包 14 2.1 Fiddler必须要做的3个设置 14 2.1.1 第 1个设置:在Fiddler中安装证书 14 2.1.2 第 2个设置:自动解压HTTP响应 14 2.1.3 第3个设置:隐藏“Tunnel to”请求 15 2.2 不允许抓包 16 2.2.1 某些App抓不到包 16 2.2.2 HTTP请求和响应全部加密 16 2.2.3 不让抓包 16 2.3 Fiddler抓不到包 17 2.3.1 Fiddler的抓包开关 17 2.3.2 浏览器抓不到包 17 2.3.3 能抓HTTP不能抓HTTPS的请求 18 2.3.4 抓不到手机中的包 19 2.3.5 经过上面的设置,还是抓不到包 20 2.3.6 在macOS中抓包 20 2.3.7 Fiddler证书安装不成功 20 2.3.8 iOS 10.3以上,手动信任证书 21 2.4 Fiddler包太多找不到自己想要的 22 2.4.1 停止抓包 22 2.4.2 只抓手机,不抓本地的包 22 2.4.3 过滤会话 23 2.4.4 只抓特定的进程 23 2.4.5 观察URL和HOST 23 2.4.6 查看进程发包 24 2.5 HTTPS是否** 24 2.6 计算机连接手机热点抓包 24 2.7 用Fiddler测试App升级 25 2.7.1 App升级原理 25 2.7.2 App升级的测试 26 2.7.3 坚果云的升级 26 2.8 短链接 27 2.8.1 短链接原理解析 27 2.8.2 使用短链接 27 2.8.3 用Fiddler抓包短链接 28 2.9 本章小结 28 第3章 Session分类和查询 29 3.1 Session的概念 29 3.2 为什么Fiddler中有这么多Session 29 3.3 Session的类型 30 3.4 搜索Session 31 3.4.1 搜索登录的会话 31 3.4.2 在请求搜索框中搜索 32 3.5 用命令行工具查询Session 32 3.5.1 通过select命令过滤 32 3.5.2 通过allbut过滤 33 3.5.3 通过“ ”过滤 33 3.5.4 通过Session类型的大小来过滤 34 3.5.5 通过“=HTTP方法”过滤 35 3.5.6 通过@Host过滤 35 3.5.7 通过“=状态码”过滤 35 3.6 给Session下断点 36 3.6.1 下断点拦截HTTP请求 36 3.6.2 下断点拦截HTTP响应 37 3.6.3 及时取消断点 37 3.7 本章小结 37 第4章 FiddlerScript的**用法 38 4.1 FiddlerScript的界面 38 4.2 Fiddler的事件函数 38 4.3 在FiddlerScript中使用正则表达式 39 4.4 忽略抓包 39 4.5 显示客户端和服务器的IP 40 4.6 显示响应时间 41 4.7 读写本地txt文件 42 4.8 保存请求 42 4.9 重新发送请求 43 4.10 本章小结 43 第5章 常见的抓包工具 44 5.1 常见的抓包工具 44 5.2 浏览器***工具 44 5.2.1 调出***工具 44 5.2.2 用Chrome测试网页加载时间 45 5.2.3 用Chrome捕获网站登录的POST请求 45 5.2.4 用Chrome测试接口的响应时间 46 5.2.5 过滤请求 47 5.3 vConsole 47 5.4 Charles抓包工具 48 5.4.1 Charles工具的安装与使用方法 48 5.4.2 在Charles中安装根证书 48 5.4.3 Charles配置规则 50 5.4.4 用Charles捕捉网站登录的请求 50 5.5 Wireshark抓包工具 51 5.5.1 用Wireshark捕捉HTTP 51 5.5.2 用Wireshark捕捉HTTPS 53 5.6 本章小结 55 第6章 用Python发送HTTP请求 56 6.1 requests框架介绍 56 6.1.1 在pip中安装requests框架 56 6.1.2 在PyCharm中安装requests框架 56 6.2 发送GET请求 57 6.2.1 用Fiddler捕获Python发出的HTTP请求 58 6.2.2 发送HTTPS请求 59 6.2.3 发送带参数的GET请求 59 6.2.4 发送带信息头的请求 60 6.3 发送POST请求 61 6.3.1 发送普通POST请求 61 6.3.2 发送JSON的POST请求 61 6.4 会话维持 62 6.5 用Python发送各种请求 62 6.6 用Python下载文件 63 6.6.1 用Python下载图片 63 6.6.2 用Python下载视频 63 6.7 本章小结 63 第7章 用正则表达式提取数据 64 7.1 正则表达式测试工具 64 7.2 利用正则表达式提取数据 64 7.3 提取订单号 64 7.4 提取token字符串 66 7.5 从JSON字符串中提取 67 7.6 提取Cookie字符串 67 7.7 爬虫提取数据 68 7.8 本章小结 68 第8章 HTTP的9种请求方法 69 8.1 HTTP常见的9种请求方法 69 8.2 HTTP幂等性 69 8.3 9种请求方法的特性 70 8.4 HTTP和数据的增删改查操作的对应关系 70 8.5 PUT方法 70 8.5.1 POST方法和PUT方法的区别 71 8.5.2 PUT方法和POST方法的选择 71 8.6 DELETE方法 71 8.7 HEAD方法 72 8.8 OPTIONS方法 73 8.9 CONNECT方法 73 8.10 PATCH方法 74 8.11 TRACE方法 74 8.12 本章小结 75 第9章 内容类型 76 9.1 Content-Type介绍 76 9.1.1 Content-Type的格式 76 9.1.2 常见的Content-Type 77 9.2 POST提交数据的方式 77 9.3 3种常见的POST提交数据的方式 78 9.3.1 application/x-www-form- urlencoded 78 9.3.2 application/json 79 9.3.3 text/xml 79 9.4 HTTP中的负荷 79 9.4.1 请求负荷 80 9.4.2 响应负荷 81 9.5 错误的POST提交方法 81 9.6 根据接口文档调用接口实例 81 9.7 键值对和JSON的混合 82 9.8 本章小结 83 第 10章 HTTP上传和下载 84 10.1 HTTP上传文件的两种方式 84 10.2 multipart/form-data 84 10.2.1 对禅道上传图片的操作进行抓包 85 10.2.2 使用JMeter模拟上传图片 87 10.2.3 使用Python上传图片 88 10.3 application/octet-stream 88 10.3.1 在博客园的文章中上传图片 88 10.3.2 用JMeter模拟博客园上传图片 90 10.3.3 用Python模拟博客园上传图片 91 10.4 用HTTP下载文件 92 10.4.1 用JMeter下载文件 92 10.4.2 用Python实现下载文件 93 10.5 HTTP断点续传 94 10.5.1 HTTP请求信息头 94 10.5.2 HTTP分段实例 94 10.6 本章小结 95 第 11章 HTTP对各种类型程序的抓包 96 11.1 用Fiddler抓取视频 96 11.2 用Fiddler抓音频文件 97 11.3 用Fiddler抓Flash 97 11.4 用Fiddler抓公众号 98 11.5 用Fiddler抓包小程序 99 11.6 用AJAX抓包 99 11.7 用Fiddler抓包C# 100 11.8 用Fiddler抓包Java 100 11.9 用Fiddler抓包Postman 101 11.10 用Fiddler捕获macOS 101 11.11 用Fiddler捕获Linux系统 103 11.12 用Fiddler抓包坚果云 103 11.13 本章小结 104 第 12章 自动登录和登录** 105 12.1 登录的较量 105 12.2 登录的风险 105 12.2.1 冒用他人账户登录 106 12.2.2 账户和密码在传输过程中被截获 106 12.2.3 密码被破解 106 12.2.4 系统被爬虫软件或者脚本自动登录 106 12.3 登录的风控 106 12.4 登录用GET还是POST 106 12.4.1 GET方法的缺点 107 12.4.2 POST比GET** 107 12.4.3 使用GET方法登录的网站 108 12.5 **的原则 108 12.6 使用POST方法登录的网站 109 12.7 登录响应携带隐藏的token字符串 110 12.8 用JavaScript中的MD5给密码加密 112 12.9 用JavaScript动态加密密码 114 12.9.1 绕开JS混淆密码 115 12.9.2 JS混淆密码总结 116 12.10 短信验证码登录 116 12.11 二维码扫码登录 117 12.12 拼图登录 117 12.13 普通图片验证登录 117 12.14 独特的验证方式 118 12.15 本章小结 119 第 13章 图片验证码识别 120 13.1 图片验证码 120 13.1.1 图片验证码原理 121 13.1.2 图片识别介绍 121 13.1.3 Tesseract的安装与使用 121 13.1.4 Tesseract的使用 122 13.1.5 pytesseract的使用 122 13.2 用Python实现图片验证码登录 123 13.3 本章小结 124 第 14章 综合实例——自动点赞 125 14.1 给文章自动点赞 125 14.1.1 拼图验证方式 125 14.1.2 直接使用Cookie绕过登录 126 14.1.3 分析点赞的HTTP请求 126 14.2 用JMeter实现博客园文章自动点赞 129 14.3 使用Python实现博客园文章自动点赞 130 14.4 本章小结 131 第 15章 前端和后端 132 15.1 Web架构图 132 15.2 前端开发和后端开发的区别 133 15.2.1 展示方式不同 133 15.2.2 运行不同 133 15.2.3 全栈工程师 133 15.2.4 前端和后端分离 134 15.3 前端验证和后端验证 134 15.3.1 前端验证 134 15.3.2 后端验证 135 15.3.3 前端验证和后端验证都需要 136 15.4 后端验证的Bug 136 15.5 Fiddler绕过前端实现投票 137 15.6 后台和后台管理的区别 138 15.7 本章小结 139 第 16章 接口和接口测试 140 16.1 接口的概念 140 16.1.1 后端接口 140 16.1.2 在线英语App示例 141 16.1.3 “我的订单”的前端和接口 141 16.2 登录接口示例 142 16.3 接口文档的维护 143 16.3.1 用Word文档维护 143 16.3.2 用Wiki页面维护 143 16.3.3 Swagger 143 16.3.4 调用接口的方式 145 16.4 接口测试的工具 145 16.5 接口测试的本质 146 16.6 接口测试的目的 147 16.6.1 接口测试的优势 147 16.6.2 接口测试是必需的吗 147 16.6.3 接口测试需要的知识 148 16.6.4 接口测试的流程 148 16.6.5 接口测试的测试内容 148 16.6.6 后端接口和前端测试是否重复 149 16.7 登录接口的测**例 149 16.8 接口测试是自动化测试吗 149 16.9 如何设计接口测**例 150 16.10 接口内部状态码 151 16.11 本章小结 152 第 17章 JSON数据格式 153 17.1 JSON格式在接口中的应用 153 17.2 JSON的概念 153 17.3 JSON的应用场合 153 17.4 JSON的语法 154 17.5 JSON值的类型 154 17.6 JSON应该使用双引号 154 17.7 JSON数组 155 17.8 JSON的嵌套 155 17.9 JSON格式错误 156 17.10 JSON解析工具 156 17.10.1 在线的解析工具 156 17.10.2 Notepad 格式化JSON 156 17.10.3 在JMeter中格式化JSON 157 17.10.4 在Fiddler中格式化JSON 157 17.11 拼接JSON字符串 158 17.12 JMeter中的JSON提取器 159 17.13 本章小结 160 第 18章 HTTP和RESTful服务 161 18.1 什么是RESTful 161 18.2 RESTful的优点 162 18.3 RESTful的主要原则 162 18.3.1 以资源为核心 162 18.3.2 每个资源分配**的URL 163 18.3.3 通过标准的HTTP(HTTPS)方法操作资源 163 18.3.4 过滤信息 164 18.3.5 资源的表现层可以是XML、JSON或者其他 164 18.3.6 认证机制 165 18.3.7 错误处理 165 18.4 本章小结 165 第 19章 用Postman测试分页接口 166 19.1 接口介绍 166 19.2 设计测**例 167 19.3 用Postman实现接口自动化 167 19.3.1 Postman介绍 167 19.3.2 Postman的使用 167 19.4 接口测试的发展方向 170 19.5 本章小结 170 第 20章 用JMeter测试单个接口 171 20.1 JMeter介绍 171 20.2 添加客房接口介绍 171 20.3 设计接口的测**例 172 20.4 JMeter的操作过程 172 20.5 数据驱动测试 175 20.6 本章小结 177 第 21章 接口的token认证 178 21.1 接口的认证 178 21.2 token认证 178 21.2.1 调用天气预报接口 180 21.2.2 token和Cookie的区别 181 21.3 token和Cookie一起用 182 21.4 在JMeter中如何处理token字符串 182 21.5 接口的三大**性问题 185 21.6 请求参数被篡改 186 21.7 重放攻击 186 21.7.1 在Fiddler中进行重放攻击 187 21.7.2 UNIX时间戳 187 21.7.3 接口带时间戳和签名 188 21.8 本章小结 188 第 22章 发包常见的错误 189 22.1 发包的本质 189 22.2 对比HTTP请求 189 22.3 用JMeter发包常见的错误 190 22.3.1 输入的网址错误 190 22.3.2 端口号填错 191 22.3.3 协议错误 191 22.3.4 变量取值错误 191 22.3.5 服务器返回404错误 192 22.3.6 服务器返回400错误 192 22.3.7 服务器返回500错误 192 22.4 Postman发包常见问题 193 22.5 JMeter和Postman的区别 193 22.6 接口测试寻求帮助 194 22.7 本章小结 195 第 23章 **活动的压力测试 196 23.1 **活动的压力测试方案 196 23.1.1 **的原理 196 23.1.2 测试目标 197 23.1.3 业务分析 197 23.1.4 测试指标 197 23.2 使用Fiddler来测试**活动 198 23.2.1 用Fiddler重新发送HTTP请求 198 23.2.2 用Fiddler测试**活动的思路 198 23.2.3 用Fiddler测试优惠券 199 23.2.4 单线程还是多线程 201 23.2.5 分辨脚本和用户 201 23.3 捕获App上的优惠券活动 201 23.4 使用JMeter来测试**活动 202 23.5 压力测试报告 203 23.6 本章小结 204 第 24章 用Fiddler和JMeter进行 性能测试 205 24.1 性能测试概述 205 24.2 Web页面加载时间测试 206 24.2.1 258原则 206 24.2.2 实例:博客园页面加载时间测试 206 24.3 接口的响应时间测试 208 24.4 视频播放的性能测试 210 24.5 模拟5个用户同时登录网站 210 24.6 模拟5个不同的用户同时登录网站 212 24.7 本章小结 213 第 25章 HTTP中的支付**测试 214 25.1 修改支付价格 214 25.2 漏洞发生的原因 215 25.3 支付漏洞的解决方法 216 25.3.1 前端不传递金额 216 25.3.2 签名防止数据被篡改 217 25.4 修改充值金额测试 217 25.5 多线程提现测试 218 25.6 转账金额修改测试 219 25.7 重复支付 220 25.8 本章小结 221 第 26章 Web**渗透测试 222 26.1 敏感信息泄露测试 222 26.2 重置密码测试 222 26.3 修改任意账号的邮箱密码 225 26.4 Cookie是否是HttpOnly属性 225 26.5 越权访问漏洞 226 26.6 资源必须登录才能访问 227 26.7 修改VIP会员到期时间 228 26.8 本章小结 229 第 27章 综合实例——自动提交订单 230 27.1 背景 230 27.2 回归测试 230 27.3 让回归测试自动化 231 27.4 产品的架构 231 27.5 自动化测试方案 231 27.6 哪些测**例可以自动化 232 27.7 下单的测**例 233 27.8 用JMeter实现自动提交订单 233 27.9 用Python实现自动提交订单 236 27.10 用JMeter实现自动取消订单 237 27.11 用Python实现自动取消订单 239 27.12 模拟100个用户同时下1000个订单 240 27.13 本章小结 241 第 28章 综合实例——自动申请账号 242 28.1 一键申请账号 242 28.2 用JMeter实现自动创建用户 245 28.3 本章小结 248 第 29章 综合实例——自动签到领积分 249 29.1 自动签到的思路 249 29.2 手机抓包 249 29.3 某电商签到领豆子 249 29.4 某金融App签到 251 29.5 自动运行脚本 252 29.5.1 Python脚本利用Windows计划定时执行 252 29.5.2 在Jenkins中定时执行 253 29.6 本章小结 253 第30章 综合实例——App约课助手 254 30.1 App约课助手的思路 254 30.2 自动化方案 254 30.3 模拟App端还是Web端 254 30.4 网课约课助手开发 255 30.4.1 第 1步:模拟登录 255 30.4.2 第 2步:获取课程ID 258 30.4.3 第3步:约课 259 30.5 本章小结 260

    与描述相符

    100

    北京 天津 河北 山西 内蒙古 辽宁 吉林 黑龙江 上海 江苏 浙江 安徽 福建 江西 山东 河南 湖北 湖南 广东 广西 海南 重庆 四川 贵州 云南 西藏 陕西 甘肃 青海 宁夏 新疆 台湾 香港 澳门 海外