zoukankan      html  css  js  c++  java
  • 接口自动化第一阶段代码

     目标:

    一、实现单一接口的请求http_request.py

    request模块完成,http请求,生成类

    加断言,处理异常,用try except 

    二、完成读取数据,并且批量写回到excl----new_do_excl.py完成

    # new_do_excl代码
    from openpyxl import load_workbook


    class DoExcl:

    def get_data(self, file_name, sheet_name):
    file = load_workbook(file_name)
    sheet = file[sheet_name]

    test_data = []
    new_tel = file["tel"].cell(1, 1).value

    for i in range(2, sheet.max_row+1): # +1取左不取右,max_clumn

    sub_data = {}
    sub_data["id"] = sheet.cell(i, 1).value
    sub_data["HttpMethod"] = sheet.cell(i, 2).value
    sub_data["module"] = sheet.cell(i, 3).value
    sub_data["description"] = sheet.cell(i, 4).value
    sub_data["url"] = sheet.cell(i, 5).value
    # if sheet.cell(1, 6).value.find("{$tel}") != -1:
    # sub_data['param'] = sheet.cell(i, 6).value.replace('${tel}', str(new_tel))
    # else:
    sub_data["param"] = sheet.cell(i, 6).value

    sub_data["ExpectedResult"] = sheet.cell(i, 7).value
    test_data.append(sub_data)
    file["tel"].cell(1, 1).value = new_tel+1
    file.save(file_name)
    return test_data

    def write_back(self, file_name, sheet_name, row, ActualResult, TestResult):
    wb = load_workbook(file_name)
    sheet = wb[sheet_name]
    sheet.cell(row, 8).value = ActualResult
    sheet.cell(row, 9).value = TestResult
    wb.save(file_name)


    if __name__ == '__main__':
    test_data = DoExcl().get_data('api.xlsx','testcase')
    print("测试数据是:{}".format(test_data))

    #http_request代码
    import requests


    class HttpMethod:

    def http_request(self,url,param,http_method):
    if http_method.upper() =='POST':
    try:
    res = requests.post(url, param)
    except Exception as e:
    print("post注册请求出错,错误是{}".format(e))
    else:
    try:
    res = requests.get(url, param)
    except Exception as e:
    print("post注册请求出错,错误是{}".format(e))

    print("http请求的结果是{}".format(res.json()))
    return res.json() # 增加返回值,在请求正常的情况下有返回值


    # if __name__ == '__main__':
    # url = 'http://47.107.168.87:8080/futureloan/mvc/api/member/register'
    # param = {"mobilephone": "18801002528", "pwd": "123456", "regname": "lemonban011"}
    # HttpMethod().http_request(url,param,"post")

    # run代码
    import requests


    class HttpMethod:

    def http_request(self,url,param,http_method):
    if http_method.upper() =='POST':
    try:
    res = requests.post(url, param)
    except Exception as e:
    print("post注册请求出错,错误是{}".format(e))
    else:
    try:
    res = requests.get(url, param)
    except Exception as e:
    print("post注册请求出错,错误是{}".format(e))

    print("http请求的结果是{}".format(res.json()))
    return res.json() # 增加返回值,在请求正常的情况下有返回值


    # if __name__ == '__main__':
    # url = 'http://47.107.168.87:8080/futureloan/mvc/api/member/register'
    # param = {"mobilephone": "18801002528", "pwd": "123456", "regname": "lemonban011"}
    # HttpMethod().http_request(url,param,"post")


























  • 相关阅读:
    【转】memcached分布式部署
    【转】分布式与集群的区别
    [转]memcached+magent实现memcached集群
    [转]Memcache的原理和命中率的总结
    [转]PHP SOCKET编程
    [转]Hive安装及使用攻略
    [转]Linux的SOCKET编程详解
    Git介绍
    [转]wget 下载整个网站,或者特定目录
    [转]五种常见的 PHP 设计模式
  • 原文地址:https://www.cnblogs.com/lin-yue/p/10294744.html
Copyright © 2011-2022 走看看