博主最近在研究接口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. Angular学习(8)- directive

    <!DOCTYPE html> <html ng-app="MyApp"> <head> <title>Study 9</ti ...

  2. 剑指offer系列25---构建乘积数组

    [题目]给定一个数组A[0,1,…,n-1],请构建一个数组B[0,1,…,n-1],其中B中的元素B[i]=A[0]A[1]…A[i-1]A[i+1]…A[n-1].不能使用除法. package ...

  3. onNewIntent调用时机

    在IntentActivity中重写下列方法:onCreate onStart onRestart  onResume  onPause onStop onDestroy  onNewIntent 一 ...

  4. 反转(开关问题) POJ 3276

    POJ 3276 题意:n头牛站成线,有朝前有朝后的的,然后每次可以选择大小为k的区间里的牛全部转向,会有一个最小操作m次使得它们全部面朝前方.问:求最小操作m,再此基础上求k. 题解:1.5000头 ...

  5. 使用jackson进行json数据格式转换

    private static final JsonFactory factory = new JsonFactory(); StringWriter jsonOut = new StringWrite ...

  6. Spark RDDRelation

    package main.asiainfo.coc.sparksql import org.apache.spark.sql.SQLContext import org.apache.spark.{S ...

  7. JMS的常用方法

    import javax.jms.Connection; import javax.jms.ConnectionFactory; import javax.jms.Destination; impor ...

  8. Python 汉字转拼音库 pypinyin

    一.初衷: 一些开源软件的配置文件中识别区分的部分用英文,那么我们在批量生成配置文件的时候,可以从CMDB导入汉字(idc_name), 然后将它转换成拼音,再或者拼接上IP地址,以便更准确的识别.例 ...

  9. Redirect 原理

    mvc .net 中,从服务器端跳转页面有很多方法 有些不会改变浏览器地址栏的地址,这个好理解,mvc本身的机制就是action的名字不一定是view的名字 我们请求的不是文件名,在action中我们 ...

  10. Java8之默认方法和静态接口方法

    前言 上一篇文章30分钟入门Java8之lambda表达式,我们学习了lambda表达式.现在继续Java8新语言特性的学习,今天,我们要学习的是默认方法和静态接口方法. 这一Java8的新语言特性, ...