Robot Framework 自动化测试框架核心指南-Robot Framework对数据库的操作MYSQL(学习笔记3)

2.1 DatabaseLibrary库的使用

自动化过程中,连接不同数据库操作也是很常见的事情;Robot Framework提供了DatabaseLibrary库来操作数据库。
安装该库的方法;
①在浏览器中访问http://franz-see.github.io/Robotframework-Database-Library/页面,即可看到该库的相关安装说明和API介绍;
②命令行安装(我喜欢这个)
pip install -U robotframework-databaselibrary
Robot Framework 自动化测试框架核心指南-Robot Framework对数据库的操作MYSQL(学习笔记3)
安装完成后,在使用DatabaseLibrary库时,需要预先在测试套件中导入该库
这里以MySQL数据库为例,讲述DatabaseLibrary库的使用;
Robot Framework 自动化测试框架核心指南-Robot Framework对数据库的操作MYSQL(学习笔记3)
要连接到MySQL,除了要导入DatabaseLibrary库外,还需要安装pure-Python MySQL client library,可以通过访问网址:https://github.com/PyMySQL/PyMySQL下载该库并且进行安装,或者直接在cmd命令行中输入pip install PyMySQL来进行安装
Robot Framework 自动化测试框架核心指南-Robot Framework对数据库的操作MYSQL(学习笔记3)

2.1.1 如何连接数据库

(1)可以通过DatabaseLibrary库中的Connect To Database关键字来连接一个MySQL数据库。此处以连接本机MySQL库为例
数据库用户名:root
数据库密码:123456
MySQL数据库端口:3306
数据库名:mydb
执行步骤:创建一个testCase,按照下面图中的配置,以自己数据库的实际情况来配置;
Robot Framework 自动化测试框架核心指南-Robot Framework对数据库的操作MYSQL(学习笔记3)
执行结果
Robot Framework 自动化测试框架核心指南-Robot Framework对数据库的操作MYSQL(学习笔记3)
(2)还可以通过Connect To Database Using Custom Params关键字来连接MySQL数据库,如图2-1-6所示。
Robot Framework 自动化测试框架核心指南-Robot Framework对数据库的操作MYSQL(学习笔记3)
执行结果
Robot Framework 自动化测试框架核心指南-Robot Framework对数据库的操作MYSQL(学习笔记3)

2.1.2 如何断开数据库

通过关键字Disconnect From Database断开数据库连接,我们在操作数据库时一定不要忘记在操作完成后断开数据库的连接
Robot Framework 自动化测试框架核心指南-Robot Framework对数据库的操作MYSQL(学习笔记3)
执行结果:
Robot Framework 自动化测试框架核心指南-Robot Framework对数据库的操作MYSQL(学习笔记3)

2.1.3 如何对数据库的表进行查询

通过Query关键字可以对数据库中的表进行查询。此处以查询MySQL数据库中某张表的数据为例,我们在mydb数据库中执行“SELECT * FROM employee LIMIT 5;
执行步骤:
Robot Framework 自动化测试框架核心指南-Robot Framework对数据库的操作MYSQL(学习笔记3)
执行结果:
Robot Framework 自动化测试框架核心指南-Robot Framework对数据库的操作MYSQL(学习笔记3)

2.1.4 如何插入和删除数据

通过Execute Sql String关键字来执行INSERT INTO department(DEPT_ID,DEPT_NAME,DEPT_NO,LOCATION) VALUES(111,‘China’,‘China’,‘China’);
执行步骤:
Robot Framework 自动化测试框架核心指南-Robot Framework对数据库的操作MYSQL(学习笔记3)
执行结果:
Robot Framework 自动化测试框架核心指南-Robot Framework对数据库的操作MYSQL(学习笔记3)
查看一下数据库看入库没有?
Robot Framework 自动化测试框架核心指南-Robot Framework对数据库的操作MYSQL(学习笔记3)
(2)然后我们看一下怎么删除表中的数据。我们将上面插入的这条数据从数据库中删除
执行步骤Robot Framework 自动化测试框架核心指南-Robot Framework对数据库的操作MYSQL(学习笔记3)
执行结果:
Robot Framework 自动化测试框架核心指南-Robot Framework对数据库的操作MYSQL(学习笔记3)
查看一下数据库是否删掉了?
Robot Framework 自动化测试框架核心指南-Robot Framework对数据库的操作MYSQL(学习笔记3)
已经没有那条记录了

2.1.5 如何执行数据库脚本文件

在做自动化测试时,经常需要构造数据或者对库中的数据进行初始化,因此我们需要直接执行数据库脚本文件。在DatabaseLibrary库中,可以通过Execute Sql Script关键字来执行数据库脚本文件。

此处以执行本地磁盘中的script.sql为例。在script.sql脚本中放入需要执行的语句
脚本中的内容如下:
Robot Framework 自动化测试框架核心指南-Robot Framework对数据库的操作MYSQL(学习笔记3)
执行步骤:
Robot Framework 自动化测试框架核心指南-Robot Framework对数据库的操作MYSQL(学习笔记3)
执行结果:
Robot Framework 自动化测试框架核心指南-Robot Framework对数据库的操作MYSQL(学习笔记3)
看一下数据库是否插入成功:
Robot Framework 自动化测试框架核心指南-Robot Framework对数据库的操作MYSQL(学习笔记3)

2.1.6 DatabaseLibrary库的其他操作关键字

Robot Framework 自动化测试框架核心指南-Robot Framework对数据库的操作MYSQL(学习笔记3)
Robot Framework 自动化测试框架核心指南-Robot Framework对数据库的操作MYSQL(学习笔记3)

2.2 MongoDBLibrary库的使用

其实连接MongoDB的方法也和mysql大同小异,只不过用到的库,还有关键字不一样而已,这里就不多做说明,如果用robotframework-ride连接mongodb有问题的,可以私下一起讨论,这里就略过了。