zoukankan      html  css  js  c++  java
  • Robot Framework-DatabaseLibrary数据库(MySql)


       

     Robot Framework的API不依赖于选择哪种类型的数据库

    1. 数据库选择
      1. 选取数据库:MySql
      2. 下载地址:http://dev.mysql.com/downloads/mysql/
    2. Robot Framework安装Database-Library
      1. 使用管道Pip安装:pip install robotframework_databaselibrary
      2. 安装成功显示
    3. 官方参考文档
      1. 官方地址:http://franz-see.github.io/Robotframework-Database-Library/
      2. 官方API:http://franz-see.github.io/Robotframework-Database-Library/api/0.6/DatabaseLibrary.html
    4. API详解
              1. API 参数 说明
                Check If Exists In Database 查询语句 数据库中存在:存在,则为PASS,不存在,则为FAIL
                Check If Not Exists In Database 查询语句 数据库中不存在:不存在,则为PASS,存在,则为FAIL
                Connect To Database dbapiModuleName=None, dbName=None, dbUsername=None, dbPassword=None, dbHost=localhost, dbPort=5432, dbConfigFile=./resources/db.cfg 连接数据库配制信息,通过配制各项属性完成
                Connect To Database Using Custom Params dbapiModuleName=None, db_connect_string= 连接数据库配制信息,通过db_connect_string来传递。如database='my_db_test', user='postgres', password='s3cr3t', host='tiger.foobar.com', port=5432
                Delete All Rows From Table 表名 删除数据库中表的所有行:删除成功,则PASS;失败,则Fail
                Description 查询语句 返回查询语句的结果,内容格式为: [Column(name='id', type_code=1043, display_size=None, internal_size=255, precision=None, scale=None, null_ok=None)] [Column(name='first_name', type_code=1043, display_size=None, internal_size=255, precision=None, scale=None, null_ok=None)] [Column(name='last_name', type_code=1043, display_size=None, internal_size=255, precision=None, scale=None, null_ok=None)]
                Disconnect From Database 断开数据库链接
                Execute Sql Script SqlScriptFileName 执行脚本文件。SqlScriptFileName物理路径+FileName。
                Execute Sql String SqlString 执行Sql语句
                Query 查询语句 返回查询语句的查询结果
                Row Count 查询语句 返回查询语句的查询结果行总数
                Row Count Is 0 查询语句 查询语句的查询结果行总数:为0,则PASS;非0,则FAIL
                Row Count Is Equal To X 查询语句,X

                查询语句的查询结果行总数:为X,则PASS;非X,则FAIL

                X,为预期的查询结果行数,第二个需要传递的参数

                Row Count Is Greater Than X 查询语句,X

                查询语句的查询结果行总数:大于X,则PASS;小于或等于X,则FAIL

                X,为预期的查询结果行数,第二个需要传递的参数

                Row Count Is Less Than X 查询语句,X

                查询语句的查询结果行总数:大于X,则PASS;小于或等于X,则FAIL

                X,为预期的查询结果行数,第二个需要传递的参数

                Table Must Exist 表名 表名必须存在:存在,则PASS;不存在,则FAIL
    5. 实例
      1. 前题
        • 项目中需要添加Database的Library
      2. 连接数据库
        • 程序代码
        1. Connect To Database Using Custom Params    pymysql    database='infomation_schma', user='root', password='123456', host='localhost', port=3306
        • 代码说明
          • Connect To Database Using Custom Params:使用参数来连接数据库
          • pymysql:连接的数据库
          • database='infomation_schma',user='root',password='123456',host='localhost',port='3306':连接数据库的相关参数
        • 验证连接是否成功:执行此代码,运行PASS则连接成功
      3. 查询数据库
        • 数据库中表内容:
        • 编写脚本
        • 1 Connect To Database Using Custom Params    pymysql    database='information_schema', user='root', password='123456', host='localhost', port=3306
          2 ${result}    Query    select engine from engines
          3 Log    -------------------    
          4 Log    ${result}    
          5 Log    -------------------    
        • 代码说明:
          • 第1行:上个例子已经有说明
          • 第2行:使用Query方法来执行"select * from user_privileges",并将查询的结果返回对变量${result}
          • 第3行:使用Log日志来把查询的结果,显示到执行日志中
        • 执行结果:
        • 1 20150729 15:47:46.661 :  INFO : ${result} = (('FEDERATED',), ('MRG_MYISAM',), ('MyISAM',), ('BLACKHOLE',), ('CSV',), ('MEMORY',), ('ARCHIVE',), ('InnoDB',), ('PERFORMANCE_SCHEMA',))
          2 20150729 15:47:46.661 :  INFO : -------------------
          3 20150729 15:47:46.676 :  INFO : (('FEDERATED',), ('MRG_MYISAM',), ('MyISAM',), ('BLACKHOLE',), ('CSV',), ('MEMORY',), ('ARCHIVE',), ('InnoDB',), ('PERFORMANCE_SCHEMA',))
          4 20150729 15:47:46.676 :  INFO : -------------------

    

  • 相关阅读:
    python3 初识GUI
    UI自动化测试底层原理
    Oracle导入数据无法导出空表的问题
    Oracle导入大数据量(百万以上)dmp文件,报错ora-12592 :包错误
    selenium 不同版本Driver
    selenium3 调用IE Unable to get browser
    记录错误,服务器上运行自动化脚本找不到窗口。
    python3 实现对代码文件中注释的翻译
    python3 通过邮件发送测试报告
    es6数值类型
  • 原文地址:https://www.cnblogs.com/s380774061/p/4667881.html
Copyright © 2011-2022 走看看