Python3脚本编程:解析Yapi接口文档组成excel测试用例

本文主要是介绍Python3脚本编程:解析Yapi接口文档组成excel测试用例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

背景:是不是总要说点什么,才能显得正式?好吧,我也很无奈,直接上代码它不香么? 

'''
Created on 2020年3月11日@author: qguan
'''import json
from utils.HandleRequests import do_request
from utils.HandleExcel import Write_excel
import conftest# 获取接口文档项目id
pro_url='接口文档地址'
# 接口文档登录地址
login_url='接口文档登录地址'
# 接口文档用户信息
login_info={"email":"账号","password1":"密码"}
# 用户登录接口文档地址
do_request("POST", login_url, login_info, is_json=True)# 登录后获取接口文档所有项目
res0=do_request("get", pro_url)
pro_info=res0['data']['list']def get_pro_name():'''获取项目名称list'''name_list=[]# 遍历获取所有项目名称加入listfor i in range(len(pro_info)):pro_name=pro_info[i]['name']name_list.append(pro_name)return name_listdef get_pro_id():'''根据获取项目名称list,输入选择的项目,获取id'''print(get_pro_name())pro_name=input("根据以上列出的项目名称输入:")# 遍历项目,通过输入的项目名,获取项目idfor i in range(len(pro_info)):pro_job=pro_info[i]['name']if pro_job==pro_name:pro_id=pro_info[i]['_id']return pro_iddef get_jk_info(pro_id):'''通过项目id获取接口信息'''# 获取项目接口信息in_url='接口文档地址?page=1&limit=80&project_id={}'.format(pro_id)pro_url='接口文档地址/get?id={}'.format(pro_id)# 获取项目接口信息res1=do_request("get", in_url)# 获取项目信息res2=do_request('get', pro_url)# 提取测试的路径env=res2['data']['env']for j in range(len(env)):if env[j]['name']=='test':env_url=env[j]['domain']else:env_url="本地测试环境"# 接口信息jk_list=[]jk_list.append(env_url)# 接口关键信息:地址、方法、名称、及idinterface=res1['data']['list']for i in range(len(interface)):method=interface[i]['method']path=interface[i]['path']title=interface[i]['title']jk_id=interface[i]['_id']jk_info='-'.join((path,title,method,str(jk_id)))jk_list.append(jk_info)return jk_listdef get_jk_body(jk_id):'''通过接口id,获取接口请求参数'''body_url='接口文档地址/get?id={}'.format(jk_id)res=do_request('get', body_url)# 请求参数body_info=res['data'].get('req_body_other')res_q={}if body_info: # 如果有参数res1=json.loads(body_info)if res1.get('properties'):for k in res1['properties'].keys():res_q[k]=""return res_qdef write_to_excel(jk_info,file_path):'''解析接口信息数据 ,写入excel'''ws=Write_excel(file_path)count=1 # 列数caseid=0 # 用例编号env=jk_info[0]for el in jk_info[1:]:count+=1caseid+=1jk_list=el.split('-')path=jk_list[0]title=jk_list[1]method=jk_list[2]jk_id=jk_list[3]
#         print(path,title,method,jk_id)if method=='POST':params=get_jk_body(jk_id)ws.write(count, 1, caseid)ws.write(count, 2, title)ws.write(count, 3, env)ws.write(count, 4, path)ws.write(count, 5, method)if params: # 如果参数不为空ws.write(count, 6, str(params).replace("'", '"'))else:ws.write(count, 1, caseid)ws.write(count, 2, title)ws.write(count, 3, env)ws.write(count, 4, path)ws.write(count, 5, method)if __name__ == '__main__':pro_id=get_pro_id()jk_info=get_jk_info(pro_id)file_path=conftest.data_path+"interface_001interface_001.xlsx"write_to_excel(jk_info,file_path)

**日拱一卒无有尽,功不唐捐终入海!**

这篇关于Python3脚本编程:解析Yapi接口文档组成excel测试用例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1043810

相关文章

使用SQL语言查询多个Excel表格的操作方法

《使用SQL语言查询多个Excel表格的操作方法》本文介绍了如何使用SQL语言查询多个Excel表格,通过将所有Excel表格放入一个.xlsx文件中,并使用pandas和pandasql库进行读取和... 目录如何用SQL语言查询多个Excel表格如何使用sql查询excel内容1. 简介2. 实现思路3

python实现pdf转word和excel的示例代码

《python实现pdf转word和excel的示例代码》本文主要介绍了python实现pdf转word和excel的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价... 目录一、引言二、python编程1,PDF转Word2,PDF转Excel三、前端页面效果展示总结一

java脚本使用不同版本jdk的说明介绍

《java脚本使用不同版本jdk的说明介绍》本文介绍了在Java中执行JavaScript脚本的几种方式,包括使用ScriptEngine、Nashorn和GraalVM,ScriptEngine适用... 目录Java脚本使用不同版本jdk的说明1.使用ScriptEngine执行javascript2.

Java后端接口中提取请求头中的Cookie和Token的方法

《Java后端接口中提取请求头中的Cookie和Token的方法》在现代Web开发中,HTTP请求头(Header)是客户端与服务器之间传递信息的重要方式之一,本文将详细介绍如何在Java后端(以Sp... 目录引言1. 背景1.1 什么是 HTTP 请求头?1.2 为什么需要提取请求头?2. 使用 Spr

Python实现将实体类列表数据导出到Excel文件

《Python实现将实体类列表数据导出到Excel文件》在数据处理和报告生成中,将实体类的列表数据导出到Excel文件是一项常见任务,Python提供了多种库来实现这一目标,下面就来跟随小编一起学习一... 目录一、环境准备二、定义实体类三、创建实体类列表四、将实体类列表转换为DataFrame五、导出Da

Python数据处理之导入导出Excel数据方式

《Python数据处理之导入导出Excel数据方式》Python是Excel数据处理的绝佳工具,通过Pandas和Openpyxl等库可以实现数据的导入、导出和自动化处理,从基础的数据读取和清洗到复杂... 目录python导入导出Excel数据开启数据之旅:为什么Python是Excel数据处理的最佳拍档

使用Python处理CSV和Excel文件的操作方法

《使用Python处理CSV和Excel文件的操作方法》在数据分析、自动化和日常开发中,CSV和Excel文件是非常常见的数据存储格式,ython提供了强大的工具来读取、编辑和保存这两种文件,满足从基... 目录1. CSV 文件概述和处理方法1.1 CSV 文件格式的基本介绍1.2 使用 python 内

解决Cron定时任务中Pytest脚本无法发送邮件的问题

《解决Cron定时任务中Pytest脚本无法发送邮件的问题》文章探讨解决在Cron定时任务中运行Pytest脚本时邮件发送失败的问题,先优化环境变量,再检查Pytest邮件配置,接着配置文件确保SMT... 目录引言1. 环境变量优化:确保Cron任务可以正确执行解决方案:1.1. 创建一个脚本1.2. 修

python写个唤醒睡眠电脑的脚本

《python写个唤醒睡眠电脑的脚本》这篇文章主要为大家详细介绍了如何使用python写个唤醒睡眠电脑的脚本,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 环境:win10python3.12问题描述:怎么用python写个唤醒睡眠电脑的脚本?解决方案:1.唤醒处于睡眠状

使用Python实现批量访问URL并解析XML响应功能

《使用Python实现批量访问URL并解析XML响应功能》在现代Web开发和数据抓取中,批量访问URL并解析响应内容是一个常见的需求,本文将详细介绍如何使用Python实现批量访问URL并解析XML响... 目录引言1. 背景与需求2. 工具方法实现2.1 单URL访问与解析代码实现代码说明2.2 示例调用