封装需要用的工具类:

1、封装读取Excel的工具类,这里选用的是pandas:

importpandas as pd

path= ‘test.xlsx‘sheet_name= ‘test_data‘

classwith_excel:#构造函数,调用类时就运行

def __init__(self, path=None, sheet_name=None):if path andsheet_name:

self.path=path

self.sheet_name=sheet_nameelse:

self.path= ‘test.xlsx‘self.sheet_name= ‘test_data‘self.data=self.open_excel()#获取表格数据

defopen_excel(self):

df=pd.read_excel(self.path, self.sheet_name)returndf#获取表中单元格行数

defget_lines(self):

lines= self.data.shape[0]#获取了最后一行的行数

returnlines#获取一个单元格的内容(获取多行的内容)

defget_cell_data(self, row, col):returnself.data.iloc[row, col]#将表格数据转字典

defto_dict(self):

test_data=[]for i in self.data.index.values: #获取与表头对应的字典数据

row_data =self.data.loc[i].to_dict()

test_data.append(row_data)returntest_dataif __name__ == ‘__main__‘:

aa = with_excel(path, sheet_name)

2、封装处理json的工具类:

import json

class open_json:

def __init__(self, filename):

self.data = self.read_data(filename)

#打开json文件

def read_data(self, filename):

with open(filename) as fp:

data = json.load(fp)

return data

#获取对应的json数据

def get_data(self, data_id):

return self.data[data_id]

3、封装mock方法

import mock

#使用mock模拟接口返回数据

def mock_test(mock_method, request_data, url, method, response_data):

mock_method = mock.Mock(return_value=response_data)

res = mock_method(url, method, request_data)

return res

4、封装requests

import requests

import json

class RunMethod:

def post_main(self, url, data, header):

if header != None:

res = requests.post(url=url, data=data, headers=header)

else:

res = requests.post(url=url, data=data)

return res

def get_main(self, url, data, header):

if header !=None:

res = requests.get(url=url, data=data, headers=header)

else:

res = requests.get(url=url, data=data)

return res

def run_main(self, method, url, data=None, header=None):

if method == ‘post‘:

res = self.post_main(url, data, header)

else:

res = self.get_main(url, data, header)

return json.dumps(res, ensure_ascii=False, sort_keys=True, indent=4)

原文:https://www.cnblogs.com/fccyccf/p/11832497.html

python小工具封装_python接口自动化(二)——封装需要用到的工具类相关推荐

  1. python程序如何封装成接口_python接口自动化如何封装获取常量的类

    这篇文章主要介绍了python接口自动化如何封装获取常量的类,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 背景: 一.执行case的过程: 首先需 ...

  2. python 封装_python接口自动化学习笔记(封装方法用于读取excel)

    本文是为难得干货文章 (是位大佬所写哦) 大家好,我是测试君. 下面分享一波Python接口自动化文章: 本篇是使用xlrd实现的对excel的数据进行读取,xlrd网上demo很多,不做过多叙述,下 ...

  3. python测试自动化封装_python接口自动化学习笔记(封装获取测试数据方法)

    本篇文章是接于python接口自动化学习笔记(封装方法用于读取excel) 后的拓展,讲解在封装完成excel的数据读取代码后,如何在data层进行使用 首先,我准备了这样一个excel表格用以存储测 ...

  4. python绕过验证码登录_python接口自动化(十三)--cookie绕过验证码登录(详解)...

    简介 有些登录的接口会有验证码:短信验证码,图形验证码等,这种登录的话验证码参数可以从后台获取的(或者查数据库最直接).获取不到也没关系,可以通过添加cookie的方式绕过验证码.(注意:并不是所有的 ...

  5. python自动化测试判断方法_python接口自动化测试之根据excel中的期望结果是否存在于请求返回的响应值中来判断用例是否执行成功...

    1.首先在excel中填写好预期结果的值 这里判断接口成功的依据是预期结果值是否存在于接口的返回数据中. 一般接口的返回值都是json对象,我们需要将json对象转换为json格式的字符串 如下图,进 ...

  6. python 判断文件类型_python接口自动化(三十) 上传文件时自动判断文件类型(filetype)...

    前言 如何判断一个文件的类型呢,判断这个文件是png还是jpg,还是MP3文件?filetype包是python用来判断文件类型的依赖包,github地址:https://github.com/h2n ...

  7. python渲染html页面_python接口自动化29-requests-html支持JavaScript渲染页面

    前言 requests虽好,但有个遗憾,它无法加载JavaScript,当访问一个url地址的时候,不能像selenium一样渲染整个html页面出来. requests-html终于可以支持Java ...

  8. python接口自动化项目_python接口自动化(四十二)- 项目结构设计之大结局(超详解)...

    简介 这一篇主要是将前边的所有知识做一个整合,把各种各样的砖块---模块(post请求,get请求,logging,参数关联,接口封装等等)垒起来,搭建一个房子.并且有很多小伙伴对于接口项目测试的框架 ...

  9. python读取每一行文字二十四_python接口自动化(二十四)--unittest断言——中(详解)...

    简介 上一篇通过简单的案例给小伙伴们介绍了一下unittest断言,这篇我们将通过结合和围绕实际的工作来进行unittest的断言.这里以获取城市天气预报的接口为例,设计了 2 个用例,一个是查询北京 ...

最新文章

  1. linux wireshark使用教程,技术|Ubuntu 上 Wireshark 的安装与使用
  2. 第二次作业(软件工作量的估记方法)
  3. spark读取hbase数据
  4. openwrt 在centos7 上的开发环境搭建时需要注意的地方
  5. 数据可视化(BI报表的开发)第一天
  6. (需求实战_终章_08)SSM集成RabbitMQ 订阅模式 关键代码讲解、开发、测试
  7. 万字详解Lambda、Stream和日期
  8. python教程1003无标题_OSError:[WinError 10038]试图对非s的对象执行操作
  9. ControllerBrokerRequestBatch分析
  10. SQL 查询笔记:子查询,分组查询,左连接查询。。。。。
  11. EasyUi-1 拖放
  12. sqlite3怎么筛选一个月之前的_怎么查询指定日期 和 这个日期 之前一个月前的数据...
  13. Apache Pulsar PMC 成员翟佳入选「2020 中国开源先锋 33 人」
  14. 产品经理,没有那么牛逼
  15. Pycharm破解版安装步骤
  16. 使用计算机录制声音10,Win10怎么录制电脑内部声音 Windows10电脑自身录音教程
  17. LNK1181 无法打开输入文件“winmm.lib”
  18. 做好的图片如何生成链接呢分享?
  19. 不一样的 LaTeX 教程(第二话):LaTeX 多级标题设置必知必会
  20. 医院绩效考核病案首页上报系统,智能上报轻松无忧

热门文章

  1. 在CentOS 6.9 x86_64的OpenResty 1.13.6.1上使用LuaRocks示例
  2. 哈佛结构和冯诺依曼结构区别。
  3. 主元素问题 Majority Element
  4. ERROR: from PIL import Image ImportError: No module named PIL
  5. 第一周Access课总结
  6. 序列化模块--json模块--pickle模块-shelve模块
  7. 实验二 164 张增进
  8. html 自动弹出框
  9. 存储过程的优缺点 (转载)
  10. 【转】通过Hibernate将数据 存入oracle数据库例子