目录

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/Python Windows (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、对常见HTTP的POST,GET请求方法进行封装(支持自由扩展以便增加其它方法

 

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

最新文章

  1. Mule入门基础
  2. linux mysql root密码重置
  3. 圆内接三角形(X神的代码玩的真好)
  4. [51NOD1126]求递推序列的第n项(矩阵快速幂)
  5. sphinx中过滤的简单介绍
  6. EF 更新数据出现 System.Data.Entity.Infrastructure.DbUpdateConcurrencyException: 异常
  7. java 服务端解决ajax跨域问题
  8. Chapter 2.策略模式
  9. 关于ajax 返回值验证问题
  10. HTML表格布局
  11. Android基础知识学习
  12. HTML5标签选择,图文混排使用dl dt dd
  13. Golang中的三个点
  14. [20171124]手工使用Seed_Database.dfb和Seed_Database.ctl建库.txt
  15. JAVA语言 第七周
  16. layui禁用侧边导航栏点击事件
  17. mysql变更数据的捕获和入库
  18. MySQL笔记(2)---InnoDB存储引擎
  19. [SQL Server 2014] 微软将于年底发布新版数据库SQL Server 2014
  20. [LeetCode] 415. Add Strings_Easy tag: String

热门文章

  1. 记一次 Java 导出大批量 Excel 优化
  2. Spark整合Hive
  3. 大一C语言学习笔记(5)---函数篇-定义函数需要了解注意的地方;定义函数的易错点;详细说明函数的每个组合部分的功能及注意事项
  4. More Effective C++笔记(二)
  5. 大爽Python入门教程 2-3 字符串,列表,字典
  6. 微信小程序(六)
  7. Python 字符串索引、切片、修改
  8. Java设计模式之(三)——建造者模式
  9. 【数据结构】【图文】【oj习题】 图的拓扑排序(邻接表)
  10. Docker 之 Dockerfile 常用语法与实战