码迷,mamicode.com
首页 > 其他好文 > 详细

requests接口自动化-excel参数化

时间:2020-06-21 12:08:00      阅读:98      评论:0      收藏:0      [点我收藏+]

标签:com   port   方法   接口自动化   Pycharm安装   数据   row   user   har   

在数据量大的时候,需要使用文件参数化。
excel文件是其中一种。

  • 安装xlrd读取excel文件。(这里是在pycharm安装)
    发现选择豆瓣安装失败,阿里云安装成功。
    技术图片
    技术图片

  • 准备excel文件,放在test_data目录下
    技术图片
    技术图片
    字典数据
    技术图片

  • 在common目录下定义函数

import xlrd
def get_excel_row(row):  #row为第几行
    excel=xlrd.open_workbook(‘../test_data/usermessage.xlsx‘)  #使用相对路径,不要使用绝对路径
    table=excel.sheets()[0]  #读取第一页数据
    return table.cell_value(row,1),table.cell_value(row,2)  #读取传入行的第二列和第三列数据

def get_row(): #获取文件的总的函数
    excel=xlrd.open_workbook(‘../test_data/usermessage.xlsx‘)  #使用相对路径,不要使用绝对路径
    table=excel.sheets()[0]  #读取第一页数据
    return table.nrows

def get_dict(row):
    excel=xlrd.open_workbook(‘../test_data/dictmessage.xlsx‘)  #使用相对路径,不要使用绝对路径
    table=excel.sheets()[0]  #读取第一页数据
    return table.cell_value(row,1)
  • 在testcase目录下进行测试
    以登录幕布为例,url=‘https://mubu.com/login/password‘,请求方法get,请求为data参数(phone,password)
import requests
from common.get_excel import *  #导入自定义的函数
url=‘https://mubu.com/login/password‘
def test_get_excel_row():  #注意:测试用例与定义的的函数在同一
    for i in range(1,get_row()):  #调用get_row()获取文件的总的函数,循环访问
        phone,password=get_excel_row(i)
        params={‘phone‘:phone,‘password‘:password}
        r=requests.get(url=url,params=params)
        print(r.status_code)
        print(r.text)


# 读取excel里的字典数据,如{‘phone‘:15625172814,‘password‘:‘password123‘}
def test_dict():
    params=get_dict(1)
    print(type(params))  #直接获取是str类型
    print(get_dict(1))
    r=requests.get(url=url,params=eval(get_dict(1)))
    print(r.status_code)
    print(r.text)

requests接口自动化-excel参数化

标签:com   port   方法   接口自动化   Pycharm安装   数据   row   user   har   

原文地址:https://www.cnblogs.com/Uni-Hoang/p/13171681.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!