接口测试脚本实践记录(五)

五 与开发接口对比

1 分别将三个接口封装成三个函数,传入接口参数,返回提取并处理后的各字段。 拼接字符串作为单独的函数。

def api_1(code):
  发送请求获取响应
   提取响应数据
   响应数据转换
   将所取字段和值以字典形式保存到result_dict返回
def  result_of_3api(code):
    result1 = api_1(code) #请求三个接口
    result2 = api_2(code)
    result3 = api_3(code)

    result = 字符串拼接
    return result

2  通过fiddler抓包获取前端接口

def api_dev(codelist,cookie):
     response = requests.get(stocktalk, headers=headers)
     response_json = response .json()
     return response_json[‘Message‘]

3 写一个函数compare_dev_vs_excepted,对比开发接口和测试脚本拼接结果

diff_list = []  # 存储不一致的代码

resultofdev =api_dev(codelist,cookie)
for code,actual in resultofdev.items():
     expected = self.result_of_3api(code)  # 数据源拼接结果

     if actual != expected :  # 预期实际对比
          print(‘代码:%s\n实际结果:%s\n预期结果:%s‘ % (code, actual , expected ))
          diff_list.append(code)
     else:
          print(code, ‘对比结果一致‘)

if diff_list:
     print(‘不一致的code列表:‘, diff_list)
else:
     print(‘对比结果:数据一致‘)

原文地址:https://www.cnblogs.com/dinghanhua/p/10127919.html

时间: 2024-07-30 04:21:06

接口测试脚本实践记录(五)的相关文章

接口测试脚本实践记录(二)

一 分别请求3个接口,获取响应. 第三方接口返回有两种:1 纯字符串  2 带bom头的json字串 import requests api1 = 'url1' response1 = requests.get(api1) result1 = response1.content.decode('utf-8-sig') #带BOM头的响应 api2 = 'url2' response2 = requests.get(api2) result2 = response2.content.decode(

接口测试脚本实践记录(六)

六 与数据库对比 import pymssql def compare_expected_vs_db(): diff_list = [] # 存储不一致的代码 with pymssql.connect(server='192.168.1.1', user='test', password='123456',database='db') as myconnect: with myconnect.cursor(as_dict=True) as cursor: cursor.execute("SELE

脚本实践1

试卷1:脚本如下, #!/bin/bash DEVICE=eth0 IPADDR=123.123.123.123 DEVICE=eth1 GATEWAY=4.3.2.1 说明:需要将重复出现的DEVICE那一行删除,同时保存第一次出现的,实现的结果如下: #!/bin/bash DEVICE=eth0 IPADDR=123.123.123.123 GATEWAY=4.3.2.1 解决方案: 1)sed  -i  's/DEVICE*//2g'  test -i 将结果重定向到源文件,2代表是从第

JavaScript网站设计实践(五)编写photos.html页面,实现点击缩略图显示大图的效果

原文:JavaScript网站设计实践(五)编写photos.html页面,实现点击缩略图显示大图的效果 一.photos.html页面,点击每一张缩略图,就在占位符的位置那里,显示对应的大图. 看到的页面效果是这样的: 1.实现思路 这个功能在之前的JavaScript美术馆那里已经实现了. 首先在页面中使用ul列表显示出所有的缩略图,然后使用JavaScript,for循环检查出当前点击的是哪一张图片,最后把这张图片给显示出来. 用到三个函数:显示图片函数.创建占位符预装图片.点击显示图片

Loadrunner之HTTP接口测试脚本实例

Loadrunner之HTTP接口测试脚本实例 接口测试的原理是通过测试程序模拟客户端向服务器发送请求报文,服务器接收请求报文后对相应的报文做出处理然后再把应答报文发送给客户端,客户端接收应答报文结果与预期结果进行比对的过程,接口测试可以通过Java发送 http post或者get请求来实现,也可以通过loadrunner来实现,今天介绍下loadrunner接口自动化测试实例: loadrunner接口测试原理是web_submit_data函数发送post或者get请求,将测试用例数据进行

Auto Hotkey 脚本学习记录 —— 热键与热字符串

参考文档: AutoHotkey 0级入门教程:让重复工作一键完成 (2011-10-24修订) AutoHotkey:帮助win run更方便 AutoHotkey|脚本:用Irfanview把24位真彩图片优化到实际色深 AutoHotkey 学习指南(最近更新: 2012-03-09) AHK 是一个叫 AutoHotKey 的软件的缩写,可以实现很多有趣的功能,可以简化你的重复性工作.比如修改系统快捷键.模拟鼠标键盘按键的按下--我们先来对付一下这些 IT 名词,它们会在后面的教程中经常

k8s1.4.3安装实践记录(2)-k8s安装

前面一篇已经安装好了ETCD.docker与flannel(k8s1.4.3安装实践记录(1)),现在可以开始安装k8s了 1.K8S 目前centos yum上的kubernetes还是1.2.0,因此我们只能是使用下载的安装包,进行kubernetes的安装 [[email protected] system]# yum list |grep kubernetes cockpit-kubernetes.x86_64 0.114-2.el7.centos extras kubernetes.x

Ionic3项目实践记录

Ionic3首次项目实践记录 Ionic3踩坑 1. 路由懒加载(lazy load) 如果设置了懒加载,就必须全部懒加载(包括TabsPage),否则会出现路由跳转后tabs消失的情况. 2. 通过ts来返回tabs的首页: 注意必须通过this.app.getRootNav().setRoot('tabs');,不能到home,否则,tabs会消失. 参见stackoverflow | Issues import { App } from "ionic-angular"; @Ion

[vsCode实践] 实践记录

[vsCode实践] 实践记录 版权2019.5.1更新 Q1:代码中涉及到操作本地文件时,相对路径总是不对 操作本地文件时,路径方式有两种 相对路径 例如:代码文件所在路径/Users/tp0829/Code_Python/myAlarmScript.py 则代码中要操作文件的相对路径music/CarryYou.wav所对应的绝对路径为:/Users/tp0829/Code_Python/music/CarryYou.wav 绝对路径 以macOS为例:绝对路径/Users/tp0829/C