''' 发送一行请求,获得返回值 ''' import json import random from demo.jsonTest import add_class from lib.excelManager import readExcel def sendRequest(row): """ 发送一行请求,获得返回值 :param row: 一行数据 :return: """ # 如果是添加方法 if row[2] == "add": load = json.loads(row[3]) name = load["name"] + str(random.randint(1000, 9999)) desc = load["desc"] + str(random.randint(1000, 9999)) display_idx = load["display_idx"] response_add = add_class(name, desc, display_idx) return response_add if __name__ == '__main__': read_excel = readExcel("../data/新增课程.xls", 0) for i in range(len(read_excel)): request = sendRequest(read_excel[i]) print(request)
import xlrd import xlutils from lib.excelManager import readExcel filePath = r'G:/pycharm_workspace/eduApi/data/教管系统-测试用例V1.2 .xls' savePath = r'G:/pycharm_workspace/eduApi/report/测试结果.xls' retDictData = readExcel(filePath, 2) for i in range(0, len(retDictData)): pass
from lib.excelManager import readExcel, getNewExcel from lib.sendCourseReq import sendCourseReq import json #1.定义文件路径变量 filePath = r'E:\ProjectCodeForPy\APIAutoTest20200304\data\教管系统-测试用例V1.2.xls' savePath = r'E:\ProjectCodeForPy\APIAutoTest20200304\report\测试结果.xls' #2.从excel中读取测试用例 retDataList = readExcel(filePath, 0) #3.复制一个新的工作簿 workBookNew = getNewExcel(filePath) workSheetNew = workBookNew.get_sheet(0) # print(retDataList) for i in range(0, len(retDataList)): #4.调用函数,并执行 retDict = sendCourseReq(retDataList[i]) colus6 = json.loads(retDataList[i][6]) # 断言结果 #5.断言结果写入excel if (retDict['retcode'] == colus6['code']): workSheetNew.write(i + 1, 7, 'pass') else: workSheetNew.write(i + 1, 7, 'fail') #某些测试用例,可能测试不通过不返回错误原因。 if 'reason' in retDict.keys(): workSheetNew.write(i + 1, 8, retDict['reason']) #6.保存excel workBookNew.save(savePath)
import unittest import json from ddt import ddt,data #上节课封装的一些函数 from lib.excelManager import readExcel,getNewExcel from lib.sendCourseReq import sendCourseReq #下面这2行代码,是从excel中读取测试用例。 filePath=r'C:\Users\yjj\PycharmProjects\untitled5\APIAutoTest20200304\data\教管系统-测试用例V1.2.xls' mydata=readExcel(filePath,0) #上节课封装的函数 # mydata=[[1,2,3],[3,4,7],[1,3,5]] #输出回车 print('\r\n') @ddt class DdtDemo(unittest.TestCase): @data(*mydata) def test09(self,aaa1): retDict = sendCourseReq(aaa1) colus6 = json.loads(aaa1[6]) # 断言结果 # 5.测试失败原因 v_reason='' #上节课的知识,测试失败可能没有返回reason if 'reason' in retDict.keys(): v_reason=retDict['reason'] #接口返回结果和excel中的进行比较