简介

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

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

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

web页面操作

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

抓包看参数和url

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

代码模拟接口请求

取到接口返回结果

断言

代码及运行结果

参考代码

  1. # coding:utf-
  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[]) # 获取 data 里最上面有个
  14. get_result = data[]['context'] # 获取已签收状态
  15. print (get_result)
  16.  
  17. #进行断言
  18. if u"已签收" in get_result:
  19. print ("快递单已签收成功")
  20. else:
  21. print ("未签收")

小结

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

python接口自动化(十九)--Json 数据处理---实战(详解)的更多相关文章

  1. python接口自动化四(json数据处理)

    前言 有些post的请求参数是json格式的,这个前面第二篇post请求里面提到过,需要导入json模块处理. 一般常见的接口返回数据也是json格式的,我们在做判断时候,往往只需要提取其中几个关键的 ...

  2. python接口自动化(七)--状态码详解对照表(详解)

    简介 我们为啥要了解状态码,从它的作用,就不言而喻了.如果不了解,我们就会像个无头苍蝇,横冲直撞.遇到问题也不知道从何处入手,就是想找别人帮忙,也不知道是找前端还是后端的工程师. 状态码的作用是:we ...

  3. “全栈2019”Java多线程第十九章:死锁详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...

  4. “全栈2019”Java异常第十九章:RuntimeException详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java异 ...

  5. “全栈2019”Java第二十九章:数组详解(中篇)

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

  6. python接口自动化13-data和json参数傻傻分不清

    前言 在发post请求的时候,有时候body部分要传data参数,有时候body部分又要传json参数,那么问题来了:到底什么时候该传json,什么时候该传data? 一.识别json参数 1.在前面 ...

  7. 【python接口自动化】- 使用json及jsonpath转换和提取数据

    前言 ​ JSON(JavaScript Object Notation)是一种轻量级的数据交换格式.它可以让人们很容易的进行阅读和编写,同时也方便了机器进行解析和生成,适用于进行数据交互的场景,比如 ...

  8. Postman接口自动化--Postman Script脚本功能使用详解

    Postman Script 功能,支持原生的JS,所以可以使用JS解决很多接口自动化的一些问题,例如接口依赖.接口参数专递和接口断言等: 这里主要是针对Pre-Request Script 和 Te ...

  9. python接口自动化(九)--python中字典和json的区别(详解)

    简介 这篇文章的由来是由于上一篇发送post请求的接口时候,参数传字典(dict)和json的缘故,因为python中,json和dict非常类似,都是key-value的形式,为啥还要这么传参,在群 ...

  10. python接口自动化13-data和json参数傻傻分不清【转载】

    转至博客:上海-悠悠 前言 在发post请求的时候,有时候body部分要传data参数,有时候body部分又要传json参数,那么问题来了:到底什么时候该传json,什么时候该传data? 一.识别j ...

随机推荐

  1. leetcode-判断回文数,非字符串算法(java实现)

    link: https://leetcode-cn.com/problems/palindrome-number/description/ 问题: 判断一个整数是否是回文数.回文数是指正序(从左向右) ...

  2. [Micropython]TPYBoard v10x MFRC522智能门禁系统

    MF RC522 是应用于13.56MHz 非接触式通信中高集成度读写卡系列芯片中的一员.也就是射频卡. 经常忘带钥匙,最尴尬的上周竟然去开4楼的门,(家住五楼,无电梯),开了好一会没打开,事后对4楼 ...

  3. flex 生成多边形时内、外环计算

    //顺时钟 var pA:Array = [{x:"2969925.6674000006",y:"476254.4874999998"},{x:"29 ...

  4. Windows10 Ubuntu bash 配置 LAMP+JDK+Tomcat

    Windows10的Bash省去了装ubuntu虚拟机的麻烦,而且可以直接用Windows下的浏览器去访问了,Exciting有没有,再也不用去忍受日常崩溃的chromium和慢慢的firefox了. ...

  5. Reactor三种线程模型与Netty线程模型

    文中所讲基本都是以非阻塞IO.异步IO为基础.对于阻塞式IO,下面的编程模型几乎都不适用 Reactor三种线程模型 单线程模型 单个线程以非阻塞IO或事件IO处理所有IO事件,包括连接.读.写.异常 ...

  6. day13_Mysql事务与数据库连接池学习笔记

    一.Mysql事务 事务: 事务指逻辑上的一组操作,组成这组操作的各个单元,要么全部成功,要么全部不成功(数据回滚).  例如:A给B转帐,对应于如下两条sql语句 : update account ...

  7. springboot数据库连接池使用策略

    springboot官方文档介绍数据库连接池的使用策略如下: Production database connections can also be auto-configured using a p ...

  8. apache2.4 虚拟主机配置

    网上教程很多,仅记录我的配置,可供参考 一.修改httpd.conf 打开appserv的安装目录,找到httpd.conf文件,分别去掉下面两行文字前面的#号. #LoadModule vhost_ ...

  9. 如何离线安装python的whl库

    对于使用公司内网环境办公的人来说,可能无法使用pip install 命令安装python的whl库.对于这种情况,我们可以用以下的方法安装一个whl库. 1 下载whl文件,下载时注意,whl文件的 ...

  10. jQuery学习之旅 Item9 动画效果

    1.元素的显示和隐藏 display:none; 隐藏 display:block; 显示 简单显示和隐藏方法 a) show() 显示 b) hide() 隐藏 c) toggle() 开关,显示则 ...