DatabaseLibrary 库用于数据库的操作;这也是常用到的一个测试库。
DatabaseLibrary 用于 Robot Framework 的使用。这可以让你查询你的数据库的行动已取得验证后的结 果。它兼容任何数据库 API 规范 2.0 模块。
1. 安装DatabaseLibrary 库
DatabaseLibrary 下载地址:
https://pypi.python.org/pypi/robotframework-databaselibrary/0.6
在线文档:
http://franz-see.github.io/Robotframework-Database-Library/
如果像安装普通的 Python 程序,可以下载 tar.gz 文件,解压并运行setup.py 文件进行安装。
C:\robot\robotframework-databaselibrary-0.6>pythonsetup.py install
因为在上一小节中我们已经安装了 pip,所以通过 pip 命令安装更为方便和快捷:
C:\Python27\Lib\site-packages>pipinstall robotframework-databaselibrary
2. 安装MySQL 数据库驱动
现在只安装 DatabaseLibrary 库,Python 操作不同的数据库,还需要安装相应的数据库驱动。
Oracle 数据库驱动:cx_Oracle
https://pypi.python.org/pypi/cx_Oracle
cx_Oracle 是一个用来连接并操作 Oracle 数据库的 Python 扩展模块,支持包括 Oracle 9.2 10.2
以及 11.1 等版本。
MySQL 数据库驱动:PyMySQL
https://pypi.python.org/pypi/PyMySQL/这个包包含一个纯 python MySQL 客户端库。
可以通过 pip 命令安装pymysql更为方便和快捷:
3. Mysql数据库操作的API文档说明
API文档说明
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 |