Robotframework使用DatabaseLibrary连接mysql数据库

Robotframework使用DatabaseLibrary连接mysql数据库

进行数据库操作,需要安装相应的操作库。DatabaseLibrary是常用的库之一,它能兼容MySQL、Oracle、sql server、DB2、sqlite3等等数据库。Python 操作不同的数据库,还需要安装相应的数据库驱动。

一、在线安装命令    pip install robotframework-databaselibrary
MySQL数据库驱动在线安装命令          pip install PyMySQL

其它数据库驱动下载和安装,请参考一下网址:
https://pypi.python.org/pypi/cx_Oracle/
https://pypi.python.org/pypi/ibm_db/
https://pypi.python.org/pypi/pymssql/

二、DatabaseLibrary库常用关键字

Connect To Database                                             连接数据库
Connect To Database Using Custom Params     使用自定义参数连接数据库
Disconnect From Database                                   断开数据库连接
Query                                                                        单个查询
Row Count                                                               返回查询结果的行数
Execute Sql String                                                   执行sql脚本
Execute Sql Script                                                   执行sql文件
Check If Exists In Database                                    判断是否有返回结果

三.链接数据库

1.mysql格式实例
Connect To Database Using Custom Params    pymysql    database='database',user='user',password='password',host='127.0.0.1',port=3306
说明:
pymysql          mysql数据库驱动的名称
database         数据库名称
user                  用户名
password         密码
host                  数据库主机地址
实际使用中根据自己的数据库修改相应的值。

2.有SSH的链接方式
如果数据库有SSH限制的数据库,则不能直接连接数据库,需要通过接口转发的形式连接。下面介绍通过xshell工具进行接口转发链接数据库。
(1)在xshell中新建一个回话,输入名称,主机地址

 

(2)在用户身份验证处填写用户名和密码

 

(3)选择SSH-->隧道,然后点击添加,在转移规则面填写侦听端口,目标主机和端口。点击确定
  

(4)保持xshell中该回话为启用状态(如果关闭则无法成功连接到数据库),在ride中输入以下脚本:

 

连接数据库
Connect To Database Using Custom Params    pymysql    database='database',user='user',password='password',host='127.0.0.1',port=1234
注意:user和password为mysql数据库连接属性“常规”标签页中的用户和密码,host必须为127.0.0.1,port为上一步配置的本机未被占用端口

运行,成功连接数据库并且获取查询结果。

结果取值处理

操作的结果是一个二维数组形式的list集,因此取值要按照二维数组形式的写法。
 
 如:log   @{a[0]}[0]    或者 ${a[0][0]}  

如果要对结果进行运算处理,可以使用关键字Evaluate

如 ${d}      Evaluate     @{a[0]}[0]-@{b[0]}[0]*3

原文地址:https://www.cnblogs.com/zhangfeivip/p/10102930.html