接口自动化 基于python实现的http+json协议接口自动化测试框架源码(实用改进版)

简介: 接口自动化 基于python实现的http+json协议接口自动化测试框架源码(实用改进版)

基于python实现的http+json协议接口自动化测试框架(实用改进版)

 


 

目录

1      写在前面

2      开发环境

3      大致流程

4      框架简介

5      运行结果展示

6      文件与配置

7      测试接口实例

n      1.登陆接口

n      2.支付密码更改接口

8      数据库设计

9      测试用例、测试数据准备

10        模块与类、函数设计

11        代码实现

a)         class congfighttp.ConfigHttp

b)         class getdb.GetDB

c)         class configrunmode.ConfigRunMode

d)         class globalconfig.Global

e)         class datastruct.DataStruct

f)         class test_interface_case.TestInterfaceCase,test_interface_case.ParametrizedTestCase

g)         class runcase.RunCase

h)         htmlreport.HtmlReport

i)         main

12        源码下载

 

1、写在前面

抛砖引玉,仅供参考

 

2、开发环境

win7 64

JetBrains PyCharm 4.0.5

Python 3.3.5


MariaDB-5.5.45-centos6-x86_64

文件下载地址:http://pan.baidu.com/s/1sj1Lzw5

 

CentOS 6.5-x86_64

下载地址:http://www.centoscn.com/CentosSoft/iso/2013/1205/2196.html

 

Mysql Connector/PythonWindows (x86, 64-bit), MSI Installer Python 3.3

下载地址:http://dev.mysql.com/downloads/connector/python/

 

其它:公司Linux mysql数据库服务器、应用服务器

 

3、大致流程

下图展示了框架实现的业务流程

 




 

4、框架简介

1、可通过配置文件http_config.ini,对要测试接口服务器的IP、域名,和端口信息进行灵活配置。

 

2、可通过配置文件db_config.ini,对测试数据库,应用数据库服务器主机IP,端口,用户名,密码等灵活配置。

 

3、可通过配置文件run_case_config.ini灵活配置需要用例运行模式,需要运行的用例ID列表

 

4、对常见HTTPPOSTGET请求方法进行封装(支持自由扩展以便增加其它方法

 

5、支持JSON(含嵌套对象格式的json数据,{ "orderTotalPrice":95, "goods":[{"shopId":987654354,"goodsId":108, "goodsNumber":1}]}})格式数据提交

 

6、通过数据库对接口测试用例、前置(数据)条件进行管理,可做到每个用例之间相互独立,互不依赖

 

7、针对接口返回结果,支持数据库级别的数据校验

 

     8、可按测试时间及给定文件名,生成对应时间的html可视化报告,报告内容包含测试耗时,测试执行用例总数,执行成功、失败、出错用例数统计;还有单个用例的执行情况(ID,用例名称,(自定义)接口名称,接口URL,接口参数,运行结果等)

 

      9、可根据实际情况,在此框架的基础上进行修改、扩展

 

5、运行结果展示

 

篇幅问题,此处省略剩下部分,如想查看更多,烦请下载文档及源码:

基于python实现的http接口自动化测试框架(实用改进版).pdf

基于python实现的http接口自动化测试框架源码(实用改进版).zip

 

 

目录
相关文章
|
30天前
|
人工智能 搜索推荐 数据管理
探索软件测试中的自动化测试框架选择与优化策略
本文深入探讨了在现代软件开发流程中,如何根据项目特性、团队技能和长期维护需求,精准选择合适的自动化测试框架。
97 8
|
11天前
|
Python
自动化微信朋友圈:Python脚本实现自动发布动态
本文介绍如何使用Python脚本自动化发布微信朋友圈动态,节省手动输入的时间。主要依赖`pyautogui`、`time`、`pyperclip`等库,通过模拟鼠标和键盘操作实现自动发布。代码涵盖打开微信、定位朋友圈、准备输入框、模拟打字等功能。虽然该方法能提高效率,但需注意可能违反微信使用条款,存在风险。定期更新脚本以适应微信界面变化也很重要。
115 60
|
1天前
|
人工智能 运维 Prometheus
AIOpsLab:云服务自动化运维 AI,微软开源云服务 AI 框架,覆盖整个生命周期
AIOpsLab 是微软等机构推出的开源框架,支持云服务自动化运维,涵盖故障检测、根本原因分析等完整生命周期。
42 13
AIOpsLab:云服务自动化运维 AI,微软开源云服务 AI 框架,覆盖整个生命周期
|
7天前
|
人工智能 编解码 自然语言处理
AGUVIS:指导模型实现 GUI 自动化训练框架,结合视觉-语言模型进行训练,实现跨平台自主 GUI 交互
AGUVIS 是香港大学与 Salesforce 联合推出的纯视觉 GUI 自动化框架,能够在多种平台上实现自主 GUI 交互,结合显式规划和推理,提升复杂数字环境中的导航和交互能力。
39 8
AGUVIS:指导模型实现 GUI 自动化训练框架,结合视觉-语言模型进行训练,实现跨平台自主 GUI 交互
|
17天前
|
IDE 测试技术 开发工具
10个必备Python调试技巧:从pdb到单元测试的开发效率提升指南
在Python开发中,调试是提升效率的关键技能。本文总结了10个实用的调试方法,涵盖内置调试器pdb、breakpoint()函数、断言机制、logging模块、列表推导式优化、IPython调试、警告机制、IDE调试工具、inspect模块和单元测试框架的应用。通过这些技巧,开发者可以更高效地定位和解决问题,提高代码质量。
129 8
10个必备Python调试技巧:从pdb到单元测试的开发效率提升指南
|
17天前
|
人工智能 Linux API
PromptWizard:微软开源 AI 提示词自动化优化框架,能够迭代优化提示指令和上下文示例,提升 LLMs 特定任务的表现
PromptWizard 是微软开源的 AI 提示词自动化优化框架,通过自我演变和自我适应机制,迭代优化提示指令和上下文示例,提升大型语言模型(LLMs)在特定任务中的表现。本文详细介绍了 PromptWizard 的主要功能、技术原理以及如何运行该框架。
106 8
PromptWizard:微软开源 AI 提示词自动化优化框架,能够迭代优化提示指令和上下文示例,提升 LLMs 特定任务的表现
|
5天前
|
存储 测试技术 API
pytest接口自动化测试框架搭建
通过上述步骤,我们成功搭建了一个基于 `pytest`的接口自动化测试框架。这个框架具备良好的扩展性和可维护性,能够高效地管理和执行API测试。通过封装HTTP请求逻辑、使用 `conftest.py`定义共享资源和前置条件,并利用 `pytest.ini`进行配置管理,可以大幅提高测试的自动化程度和执行效率。希望本文能为您的测试工作提供实用的指导和帮助。
45 15
|
13天前
|
数据采集 人工智能 自然语言处理
Midscene.js:AI 驱动的 UI 自动化测试框架,支持自然语言交互,生成可视化报告
Midscene.js 是一款基于 AI 技术的 UI 自动化测试框架,通过自然语言交互简化测试流程,支持动作执行、数据查询和页面断言,提供可视化报告,适用于多种应用场景。
132 1
Midscene.js:AI 驱动的 UI 自动化测试框架,支持自然语言交互,生成可视化报告
|
19天前
|
数据采集 网络安全 Python
【Python】怎么解决:urllib.error.HTTPError: HTTP Error 403: Forbidden
解决 `urllib.error.HTTPError: HTTP Error 403: Forbidden`错误需要根据具体情况进行不同的尝试。通过检查URL、模拟浏览器请求、使用代理服务器和Cookies、减慢请求速度、使用随机的User-Agent以及使用更加方便的 `requests`库,可以有效解决此类问题。通过逐步分析和调试,可以找到最合适的解决方案。
97 18
|
23天前
|
JSON 数据可视化 测试技术
python+requests接口自动化框架的实现
通过以上步骤,我们构建了一个基本的Python+Requests接口自动化测试框架。这个框架具有良好的扩展性,可以根据实际需求进行功能扩展和优化。它不仅能提高测试效率,还能保证接口的稳定性和可靠性,为软件质量提供有力保障。
54 7
下一篇
开通oss服务