zoukankan      html  css  js  c++  java
  • mysql学习笔记(sqlalchemy安装及简单使用)

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

    这次博主的思路是:

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

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

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

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

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

    1 # python setup.py install

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

    最后就是实现代码:

     1 #!/usr/bin/env python
     2 # -*- coding: utf-8 -*-
     3 
     4 
     5 from sqlalchemy import Column, create_engine
     6 from sqlalchemy.orm import sessionmaker
     7 from sqlalchemy.ext.declarative import declarative_base
     8 # 导入数据库所有表字段类型
     9 from sqlalchemy.dialects.mysql import 
    10     BIGINT, BINARY, BIT, BLOB, BOOLEAN, CHAR, DATE, 
    11     DATETIME, DECIMAL, DECIMAL, DOUBLE, ENUM, FLOAT, INTEGER, 
    12     LONGBLOB, LONGTEXT, MEDIUMBLOB, MEDIUMINT, MEDIUMTEXT, NCHAR, 
    13     NUMERIC, NVARCHAR, REAL, SET, SMALLINT, TEXT, TIME, TIMESTAMP, 
    14     TINYBLOB, TINYINT, TINYTEXT, VARBINARY, VARCHAR, YEAR
    15 
    16 # 创建对象的基类:
    17 Base = declarative_base()
    18 
    19 
    20 # 定义Interface表对象:
    21 class Interface(Base):
    22     # 表的名字:
    23     __tablename__ = 'interface'
    24 
    25     # 表的结构:
    26     id = Column(VARCHAR(50), primary_key=True)
    27     url = Column(VARCHAR(100))
    28     method = Column(VARCHAR(30))
    29     param = Column(VARCHAR(30))
    30     requestExam = Column(TEXT)
    31     responseParam = Column(TEXT)
    32     errorList = Column(TEXT)
    33     trueExam = Column(TEXT)
    34     falseExam = Column(TEXT)
    35     status = Column(TEXT)
    36     moduleId = Column(VARCHAR(50))
    37     interfaceName = Column(VARCHAR(100))
    38     remark = Column()
    39     errors = Column(TEXT)
    40     updateBy = Column(TEXT)
    41     createTime = Column(TEXT)
    42     version = Column(TEXT)
    43     updateTime = Column(TEXT)
    44     sequence = Column(INTEGER(100))
    45 
    46 
    47 # 数据库连接信息: 数据库类型://用户名:密码@数据库地址:端口/数据库库名?编码
    48 mysql_db = "mysql://api:api@xxx:3306/APIMANAGER?charset=utf8"
    49 
    50 # 初始化数据库连接:
    51 engine = create_engine(mysql_db)
    52 
    53 # 创建DBSession类型:
    54 DBSession = sessionmaker(bind=engine)
    55 
    56 # 创建session对象:
    57 session = DBSession()
    58 
    59 # query函数相当于select,filter函数相当于where,one是返回一条结果,all是返回所有结果
    60 API = session.query(Interface).filter(Interface.id == "09bd79df-cdbc-4f81-8cdf-c4763fd8a725").one()
    61 print API.interfaceName
    62 
    63 # API = session.query(Interface).all()
    64 # for i in range(len(API)):
    65 #     print API[i].param
    66 
    67 # 关闭session对象
    68 session.close()

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

  • 相关阅读:
    07hibernate_one2one_ufk_1
    05hibernate_one2one_pk_1(forget)
    01hibernate_first
    蜂蜜 与 营养
    06hibernate_one2one_pk_2(you can forget)
    DLL,DML,DCL,TCL in Oracle
    04hibernate_many2one_cascade
    02hibernate_session
    03hibernate_basemapping_uuid_native_assigned
    各地工资水平
  • 原文地址:https://www.cnblogs.com/cllovewxq/p/5653570.html
Copyright © 2011-2022 走看看