Python接口自动化 —— Json 数据处理实战(详解)

简介

上一篇说了关于json数据处理,是为了断言方便,这篇就带各位小伙伴实战一下。首先捋一下思路,然后根据思路一步一步的去实现和实战,不要一开始就盲目的动手和无头苍蝇一样到处乱撞,撞得头破血流后而放弃了。不仅什么没学习

到,自己的自信心都受到打击了,自己都怀疑自己。其实你是最棒的,天生我材必有用,好了废话不说,进入实战------以查看快递物流接口为例。

大致流程步骤:web页面操作--->抓包看参数和url--->代码模拟接口请求--->取到接口返回结果--->断言

web页面操作

1、浏览器输入快递物流查询url,输入快递单号,点击"查询"

抓包看参数和url

1、点击"查询",fiddler抓包,查看url和参数

代码模拟接口请求

取到接口返回结果

断言

代码及运行结果

参考代码

1 # coding:utf-8

2 import requests

3 url ="http://www.kuaidi100.com/query?type=annengwuliu\&postid=300240694004\&temp=0.5964149534969456\&phone="

4 headers = {

5 "User-Agent" : "Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko"

6 } # get 方法加个 User-Agent 就可以了

7 s = requests.session()

8 r = s.get(url, headers=headers,verify=False)

9 result = r.json()

10 print(result)

11 data = result['data'] # 获取 data 里面内容

12 print (data)

13 print (data[0]) # 获取 data 里最上面有个

14 get_result = data[0]['context'] # 获取已签收状态

15 print (get_result)

16

17 #进行断言

18 if u"已签收" in get_result:

19 print ("快递单已签收成功")

20 else:

21 print ("未签收")

小结

各位小伙伴,看到了,断言就是这么简单,其实和你写的测试用例差不多,将预期与实际结果进行对比,只不过是用代码体现出来。

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

相关推荐
Agent手记3 小时前
异常考勤智能预警与处理与流程优化方案 | 基于企业级Agent的超自动化实战教程
运维·人工智能·ai·自动化
不会武功的火柴6 小时前
SystemVerilog语法(8)-有限状态机(FSM)
嵌入式硬件·fpga开发·自动化·ic验证·rtl·uvm方法学
慧都小妮子9 小时前
告别看图抓数据:DeviceXPlorer OPC Server 助力数据自动化管理
运维·物联网·自动化·takebishi·dxpserver·opc server
Wpa.wk9 小时前
APP自动化-Appium环境安装
运维·appium·自动化
qingfeng154159 小时前
企业微信 API 自动化开发指南:从消息回调到智能运营实战
java·开发语言·python·自动化·企业微信
志栋智能9 小时前
超自动化巡检:为智能运维(AIOps)铺平道路
运维·安全·自动化
Elecard 中国10 小时前
大规模媒体库如何实现自动化 QC?聊聊 VoD 文件检测架构
运维·自动化·ott·视频质检·vod·#视频编码·#音视频技术
Tel1992530800410 小时前
pt100转pt100 PT500转PT500二通道中继器/信号转换变送器模块
自动化·工业自动化·工控设备
DolphinScheduler社区10 小时前
DolphinScheduler 3.1.3 跨越升级 3.4.1:基于 API 的自动化迁移方案
大数据·运维·自动化·任务调度·海豚调度
米高梅狮子11 小时前
01.CentOS-Stream-8-packstack安装OpenStack
linux·云原生·容器·kubernetes·centos·自动化·openstack