python 从excel中抓取数据_python接口自动化(三)——从excel中获取数据

python接口自动化(三)——从excel中获取数据

1、按照之前的设计思路,我们需要从excel中去获取测试用例,所我们先封装一个获取数据的工具

from Data.with_config import *

from api_gj.with_excel import with_excel

from api_gj.with_json import open_json

class GetData:

def __init__(self):

self.read_excel = with_excel()

#获取数据量(行数)

def get_case_lines(self):

return self.read_excel.get_lines()

#获取是否运行

def get_if_run(self, row):

col = int(if_run())

run_model = self.get_case_cell(row, col)

if run_model == 'Y':

return run_model

else:

return None

#获取是否携带header

def get_if_header(self, row):

col = int(get_data())

header = self.get_case_cell(row, col)

if header != 'None':

return header

else:

return None

#判断请求方式

def get_request_methed(self, row):

col = int(run_way())

methed = self.get_case_cell(row, col)

return methed

#获取url

def get_request_url(self, row):

col = int(get_url())

url = self.get_case_cell(row, col)

return url

#获取请求数据

def get_request_data(self, row):

col = int(get_data())

data = self.get_case_cell(row, col)

return data

#通过关键字拿到json数据

def get_json_data(self, row):

opera_json = open_json('aaaa.json')

data = self.get_request_data(row)

if data == 'None':

request_data = None

else:

request_data = opera_json.get_data(data)

return request_data

#获取预期结果

def get_expcet_reult(self, row):

col = int(get_expect())

request_reult = self.get_case_cell(row, col)

if request_reult == 'None':

return None

else:

return request_reult

#获取某一单元格的内容

def get_case_cell(self, row, col):

return self.read_excel.get_cell_data(row, col)

#获取数据字典

def get_data_dict(self):

return self.read_excel.to_dict()

2、由于excel中表头中的字段较多,且是固定的,所以传入获取数据的时候传入的列的参数可以做一个转换:

#coding:utf-8

class global_var:

#case_id

Id = '0'

name = '1'

url = '2'

run = '3'

request_way = '4'

header = '5'

case_depend = '6'

data_depend = '7'

field_depend = '8'

data ='9'

expect = '10'

result = '11'

#获取case_id

def get_id():

return global_var.Id

#获取url

def get_url():

return global_var.url

#获取是否运行

def if_run():

return global_var.run

#获取request_way(运行方式)

def run_way():

return global_var.request_way

#获取header

def get_header():

return global_var.header

#获取case_depend

def case_depend():

return global_var.case_depend

#获取data_depend

def data_depend():

return global_var.data_depend

#获取field_depend

def field_depend():

return global_var.field_depend

#获取data

def get_data():

return global_var.data

#获取expect(预期结果)

def get_expect():

return global_var.expect

#获取result(返回结果)

def get_result():

return global_var.result

将这两部分代码合起来看就容易懂很多,主要是为了便捷传入对应的‘’列数‘’可以获取到对应的字段

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值