博主最近在研究接口API自动化测试,之前设计的通过excel来实现自动化测试的框架实际使用中还是有很多局限性

这次博主的思路是:

1 搭建接口API管理平台 支持数据库方便维护

2 自动化测试平台可直接使用平台整理的接口请求参数

3 以web格式形成可视化的界面展示接口测试数据,包括返回值,测试结果

这次博主首先整理的是sqlalchemy,一开始是安装,博主这边有安装包

根据操作系统下载相应压缩文件,解压后进入文件路径下执行安装命令

 # python setup.py install

安装成功后就可以直接使用了,下图是mysql中APIMANAGER库中interface表结构:

最后就是实现代码:

 #!/usr/bin/env python
# -*- coding: utf-8 -*- from sqlalchemy import Column, create_engine
from sqlalchemy.orm import sessionmaker
from sqlalchemy.ext.declarative import declarative_base
# 导入数据库所有表字段类型
from sqlalchemy.dialects.mysql import \
BIGINT, BINARY, BIT, BLOB, BOOLEAN, CHAR, DATE, \
DATETIME, DECIMAL, DECIMAL, DOUBLE, ENUM, FLOAT, INTEGER, \
LONGBLOB, LONGTEXT, MEDIUMBLOB, MEDIUMINT, MEDIUMTEXT, NCHAR, \
NUMERIC, NVARCHAR, REAL, SET, SMALLINT, TEXT, TIME, TIMESTAMP, \
TINYBLOB, TINYINT, TINYTEXT, VARBINARY, VARCHAR, YEAR # 创建对象的基类:
Base = declarative_base() # 定义Interface表对象:
class Interface(Base):
# 表的名字:
__tablename__ = 'interface' # 表的结构:
id = Column(VARCHAR(50), primary_key=True)
url = Column(VARCHAR(100))
method = Column(VARCHAR(30))
param = Column(VARCHAR(30))
requestExam = Column(TEXT)
responseParam = Column(TEXT)
errorList = Column(TEXT)
trueExam = Column(TEXT)
falseExam = Column(TEXT)
status = Column(TEXT)
moduleId = Column(VARCHAR(50))
interfaceName = Column(VARCHAR(100))
remark = Column()
errors = Column(TEXT)
updateBy = Column(TEXT)
createTime = Column(TEXT)
version = Column(TEXT)
updateTime = Column(TEXT)
sequence = Column(INTEGER(100)) # 数据库连接信息: 数据库类型://用户名:密码@数据库地址:端口/数据库库名?编码
mysql_db = "mysql://api:api@xxx:3306/APIMANAGER?charset=utf8" # 初始化数据库连接:
engine = create_engine(mysql_db) # 创建DBSession类型:
DBSession = sessionmaker(bind=engine) # 创建session对象:
session = DBSession() # query函数相当于select,filter函数相当于where,one是返回一条结果,all是返回所有结果
API = session.query(Interface).filter(Interface.id == "09bd79df-cdbc-4f81-8cdf-c4763fd8a725").one()
print API.interfaceName # API = session.query(Interface).all()
# for i in range(len(API)):
# print API[i].param # 关闭session对象
session.close()

这里备注下安装模块中遇到的问题解答地址

mysql学习笔记(sqlalchemy安装及简单使用)的更多相关文章

  1. MySQL学习笔记01-MYSQL安装

    一 MySQL简介 MySQL是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 公司. MySQL 最流行的关系型数据库管理系统. MySQL分为企业版和社区版. ...

  2. Entity Framework with MySQL 学习笔记一(安装)

    声明 :  数据库是Mysql,本人的程度只到会写sql语句(不会储蓄过程), c# 会基本的ADO.NET数据库访问,LINQ基础. 这篇只做个人学习|温习作用. 新手可以参考,也请高手指正错误, ...

  3. MySQL学习笔记-MHA安装配置

    一.配置主从同步   1. 本例中主从ip及端口 Master:10.1.5.8:3306 Slave1:10.1.5.9:3306 (候选master) Slave2:10.1.5.195:3306 ...

  4. mysql学习笔记(window下简单使用+Navict)

    之前安装过mysql.最近刚好要重新翻出来看看 发现又忘记了那些命令.还是要百度.所以不如自己整理下 尽管网上有很多相关的介绍.当时想对的不如自己整理出来的舒服 首先是下载安装.网上有很多就不一一罗列 ...

  5. MySql学习笔记(1)-安装

    一.安装环境 操作系统:win7 64ibt MySql版本:5.7.10.0 二.安装过程 1.点击Add 2.选择需要安装的组件 3.Excute 4.Next 5.Next 6.进入服务器配置 ...

  6. 数据库MySQL学习笔记高级篇

    数据库MySQL学习笔记高级篇 写在前面 学习链接:数据库 MySQL 视频教程全集 1. mysql的架构介绍 mysql简介 概述 高级Mysql 完整的mysql优化需要很深的功底,大公司甚至有 ...

  7. MySql学习笔记(一)之DQL常用查询

    MySql学习笔记(一)之DQL常用查询 前言:mysql是中小型的数据库软件,SQL语言分为DDL,DCL,DML,DQL四种,在这里重点讲解DQL的单表查询. 正文:在学习mysql单表查询之前, ...

  8. mysql basic operation,mysql总结,对mysql经常使用语句的详细总结,MySQL学习笔记

    mysql> select * from wifi_data where dev_id like "0023-AABBCCCCBBAA" ; 1.显示数据库列表.show d ...

  9. Mysql学习笔记(三)对表数据的增删改查。

    正文内容. 这一部分是最简单的,也是最麻烦的.简单是因为其实只包括增删该插四个部分.大体上看,增加数据.删除数据.修改数据.查询数据都不麻烦啊,我们日常都是常用的.这个谁不会呢?以前在培训机构学mys ...

  10. CentOS学习笔记--Tomcat安装

    Tomcat安装 通常情况下我们要配置Tomcat是很容易的一件事情,但是如果您要架设多用户多服务的Java虚拟主机就不那么容易了.其中最大的一个问题就是Tomcat执行权限.普通方式配置的Tomca ...

随机推荐

  1. 在WINDOWS SERVER 上或远程桌面中使用 MUTEX

    引用: http://www.cnblogs.com/fg0711/archive/2012/05/03/2480502.html 使用Mutex需要注意的两个细节 可能你已经注意到了,例子中在给Mu ...

  2. LintCode "Previous Permutation"

    A reverse version of the Dictionary algorithm :) If you AC-ed "Next Permutation II", copy ...

  3. LintCode "Heapify"

    My first try was, using partial sort to figure out numbers layer by layer in the heap.. it only fail ...

  4. mac 下使用wireshark监听网络上的数据

    分三个步骤:    1.wireshark安装        wireshark运行需要mac上安装X11,mac 10.8的系统上默认是没有X11的.先去http://xquartz.macosfo ...

  5. fork()详解

    参照: http://blog.csdn.net/jason314/article/details/5640969 http://coolshell.cn/articles/7965.html

  6. C产品狗

    作者:郭琦链接:https://www.zhihu.com/question/29342383/answer/110823046来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...

  7. 宏定义中的##操作符和... and _ _VA_ARGS_ _

    1.Preprocessor Glue: The ## Operator 预处理连接符:##操作符 Like the # operator, the ## operator can be used i ...

  8. lower_bound实现函数

    lower_bound实现 [参考链接]lower_bound二分的三种写法 我在以前,总是用lower_bound,现在发现这样不行,有些复杂的数据结构二分的时候用这个会很麻烦,不如手写二分,我接着 ...

  9. 如何修改tomcat的端口

    <Connector port="8485" protocol="HTTP/1.1" connectionTimeout="20000" ...

  10. Mysql设置字符编码及varchar宽度问题

    ubuntu16.04通过仓库安装的mysql5.7的配置文件在 /etc/mysql/mysql.conf.d/mysqld.cnf 修改字符只需要 在[mysqld] character-set- ...