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 : -------------------

         




免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM