使用外部数据库库


我们已经了解了如何使用 Selenium 库。Selenium 库的详细安装/导入将在“使用 Selenium 库与浏览器一起工作”一章中讨论。

在本章中,我们将讨论数据库以及如何使用 Robot Framework 连接和测试数据库。

转到机器人框架网站https://robotframework.org/并单击,如下所示 -

使用机器人框架的数据库

单击“库”后,您将被重定向到如下所示的屏幕 -

重定向屏幕

库分为标准库、外部库和其他库。

现在我们将在本章中看看外部库。单击外部后,将出现以下屏幕 -

图书馆分类

它显示了 Robot Framework 支持的外部库的列表。在这里,我们将更多地关注数据库库(Python)。上面的屏幕截图中突出显示了同样的内容。

单击数据库库(Python)后,您将被重定向到列出安装说明的屏幕,如以下屏幕截图所示 -

数据库库

我们可以使用 pip 安装数据库库,命令是 -

pip install -U robotframework-databaselibrary

在命令行中运行上述命令,如下所示 -

命令行库

该库存储在 python lib 文件夹中,如下所示 -

Python库

安装完成后,下一步是将库导入到项目中并将其与测试用例一起使用。

导入数据库库

从命令行使用ride.py打开ride并创建用于测试数据库的项目。

测试数据库

单击“新建项目”并为项目命名。

姓名数据库

单击“确定”保存项目。

单击“添加导入”下方的“库”。

添加导入数据库

导入数据库

输入库的名称为 DatabaseLibrary,如下所示,然后单击“确定”。

数据库库名称

保存后,库如下所示 -

保存的库名称

我们将使用 MySQL 数据库。要使用 MySQL,我们需要安装该模块。

命令

pip install pymysql
安装pymysql

现在在创建的项目下创建测试用例。

安装pymysql

单击新测试用例 -

测试用例pymysql

输入测试用例的名称,然后单击“确定”。

我们将使用我们现有的名为“客户”的数据库。

我们将使用 phymyadmin 显示客户数据库 -

phymyadmin

我们有一个名为 customer 的表,其中数据分布在 6 行中。现在将编写测试用例,连接到MySQL数据库customers并从customer表中获取数据。

在开始之前,我们将创建标量变量,用于保存 dbname、dbuser、dbpasswd、dbhost、dbport 和 queryresult 的数据以存储数据等。以下是使用值创建的变量 -

查询结果

连接到数据库的命令是 -

Connect To Database pymysql ${dbname} ${dbuser} 
${dbpasswd} ${dbhost} ${dbport}
连接到数据库

我们将添加更多测试用例,如下所示 -

更多测试用例

以下是详细信息 -

*** Settings ***
Library DatabaseLibrary

*** Variables ***
${dbname} customers
${dbuser} root
${dbpasswd} admin
${dbhost} localhost
${dbport} 3306
@{queryResults}

*** Test Cases ***
TC1

   Connect To Database pymysql ${dbname} ${dbuser} 
   ${dbpasswd} ${dbhost} ${dbport}
   Table Must Exist customer
   Check If Exists In Database SELECT * FROM customer
   @{queryResults} Query SELECT * FROM customer
   Log @{queryResults}[0]

我们已经连接到数据库,检查数据库中是否存在表 customer,执行查询并记录查询的详细信息。

我们将执行测试用例并查看输出

查看输出

表中的结果显示为 queryResults。

日志详细信息

查询结果

TC1的详细信息

TC1的详细信息

结论

我们已经了解了如何导入数据库及其安装。我们现在知道如何连接到 Robot Framework 中的 MySQL 数据库并测试表。