机器人框架 - 快速指南


机器人框架 - 概述

Robot Framework是一个开源测试自动化框架,用于验收测试和验收测试驱动开发。它遵循不同的测试用例风格——关键字驱动、Behave驱动和数据驱动来编写测试用例。Robot Framework 提供对外部库、开源工具的支持,可用于自动化。最流行的库是用于 Web 开发和 UI 测试的 Selenium 库。

测试用例是使用关键字样式以表格格式编写的。您可以使用任何文本编辑器或机器人集成开发环境(RIDE)来编写测试用例。

机器人框架在所有可用的操作系统上都能正常工作。该框架基于 Python 构建,并在 Jython (JVM) 和 IronPython (.NET) 上运行。

机器人框架特点

在本节中,我们将了解 Robot 提供的不同功能。

测试用例的表格格式

机器人框架具有简单的表格格式,其中测试用例是使用关键字编写的。新开发人员很容易理解和编写测试用例。

关键词

机器人框架带有机器人框架可用的内置关键字,可从 Selenium 库等库中获取关键字(打开浏览器、关闭浏览器、最大化浏览器等)。我们还可以创建用户定义的关键字,它们是其他用户定义的关键字或内置或库关键字的组合。我们还可以将参数传递给这些关键字,这使得用户定义的关键字就像可以重用的函数一样。

变量

机器人框架支持变量——标量、列表和字典。机器人框架中的变量易于使用,在编写复杂的测试用例时有很大帮助。

图书馆

Robot框架支持许多外部库,如SeleniumLibrary、数据库库、FTP库和http库。SeleniumLibrary 最常用,因为它有助于与浏览器交互并有助于 Web 应用程序和 UI 测试。Robot框架还有自己的内置字符串、日期、数字等库。

资源

机器人框架还允许从外部导入带有关键字的机器人文件,以便与测试用例一起使用。资源非常易于使用,当我们需要使用一些已经为其他测试项目编写的关键字时,资源非常有帮助。

数据驱动的测试用例

机器人框架支持关键字驱动风格的测试用例和数据驱动风格。数据驱动使用高级关键字作为测试套件的模板,测试用例用于与模板中定义的高级关键字共享数据。它使得使用不同输入测试 UI 的工作变得非常容易。

测试用例标记

机器人框架允许标记测试用例,以便我们可以运行标记的测试用例或跳过标记的测试用例。当我们只想运行一组测试用例或跳过它们时,标记会有所帮助。

报告和日志

机器人框架以报告和日志的形式提供测试套件、测试用例执行的所有详细信息。测试用例的所有执行详细信息都可以在日志文件中找到。提供了测试用例是否失败或通过、执行所需时间、运行测试用例所遵循的步骤等详细信息。

该编辑器与机器人框架一起提供,有助于编写和运行测试用例。该编辑器非常易于安装和使用。RIDE 通过提供特定于框架的代码补全、语法突出显示等,使编写测试用例变得容易。项目、测试套件、测试用例、关键字、变量、导入库、执行、标记测试用例的创建都可以在编辑器中轻松完成。Robot框架还提供了eclipse、sublime、Textmate、Pycharm的插件,支持机器人测试用例。

机器人框架优点

机器人框架是开源的,因此任何想要尝试的人都可以轻松尝试。

  • 它非常容易安装,有助于创建和执行测试用例。任何新手都可以轻松理解,不需要任何高水平的测试知识即可开始使用机器人框架。

  • 它支持关键字驱动、Behave驱动和数据驱动的测试用例编写风格。

  • 它对外部库有很好的支持。最常用的是Selenium Library,它很容易在机器人框架中安装和使用。

机器人框架的限制

Robot 缺乏对 if-else 和嵌套循环的支持,而当代码变得复杂时就需要这些支持。

结论

Robot Framework 是一个开源测试自动化框架,用于验收测试和验收测试驱动开发。Robot Framework中的测试用例基于以表格格式编写的关键字,这使其清晰易读,并传达了有关测试用例意图的正确信息。例如,要打开浏览器,使用的关键字是“打开浏览器”

机器人框架 - 环境设置

机器人框架是使用Python构建的。在本章中,我们将学习如何设置 Robot Framework。要使用机器人框架,我们需要安装以下内容 -

  • Python
  • 机器人框架
  • 用于 Ride IDE 的 wxPython
  • 机器人框架骑行

安装Python

要安装 python,请访问 python 官方网站 - https://www.python.org/downloads/并根据您的操作系统(Windows、Linux/Unix、Mac 和 OS X)下载最新版本或之前版本的 python )你将要使用。

这是 python 下载站点的屏幕截图 -

安装Python

根据发布日期提供的最新版本如下 -

发布日期

在下载 python 之前,建议您通过在命令行中运行以下命令来检查您的系统是否已存在 python -

Windows安装

python --version
Windows安装

如果我们得到 python 的版本作为输出,那么我们的系统中已经安装了 python。否则,您将看到如上所示的显示。

在这里,我们将下载 python 2.7 版本,因为它与我们现在使用的 Windows 8 兼容。下载后,双击 .exe python download 在您的系统上安装 python。按照安装步骤在您的系统上安装 Python。安装后,为了使 python 全局可用,我们需要将路径添加到 Windows 中的环境变量中,如下所示 -

设置 Windows 的路径

右键单击我的电脑图标并选择属性。单击高级系统设置,将显示以下屏幕。

设置路径 Windows

单击上面突出显示的环境变量按钮,它将向您显示如下屏幕 -

环境变量

选择变量路径并单击编辑按钮。

可变路径

获取python的安装路径并将其添加到最后的变量值中,如上所示。

完成此操作后,您可以检查 python 是否从任何路径或目录安装,如下所示 -

变量值

机器人框架 - Unix 和 Linux 安装

现在让我们看看在 Unix/Linux 机器上安装 Python 的几个简单步骤。打开 Web 浏览器并转到https://www.python.org/downloads/

  • 点击链接下载适用于 Unix/Linux 的压缩源代码。
  • 下载并解压文件。
  • 如果您想自定义某些选项,请编辑模块/安装文件。
  • 运行./configure脚本
  • 制作
  • 进行安装

这会将 Python 安装在标准位置/usr/local/bin并将其库安装在 /usr/local/lib/pythonXX处,其中 XX 是 Python 的版本。

在 Unix/Linux 下设置路径

将 Python 目录添加到 Unix 中特定会话的路径 -

在 csh shell 中

输入 setenv PATH "$PATH:/usr/local/bin/python" 并按 Enter。

在 bash shell 中 (Linux)

输入 export ATH="$PATH:/usr/local/bin/python" 并按 Enter。

在 sh 或 ksh shell 中

输入 PATH="$PATH:/usr/local/bin/python" 并按 Enter。

注意- /usr/local/bin/python 是 Python 目录的路径

安装画中画

现在,我们将检查下一步,即 python 的 pip 安装。PIP 是一个用于安装 python 模块的包管理器。

PIP 与 python 一起安装,您可以在命令行中检查相同的内容,如下所示 -

命令

pip --version
安装画中画

在这里我们仍然没有得到 pip 的版本。我们需要将 pip 路径添加到环境变量中,以便我们可以全局使用它。PIP 将安装在 python 的 Scripts 文件夹中,如下所示 -

安装的脚本

返回环境变量并将 pip 的路径添加到变量列表中。将 C:\Python27\SCripts 添加到环境变量中,如下所示 -

环境变量Ex

现在打开命令行并检查安装的 pip 版本 -

命令行

现在,我们已经安装了 python 和 pip。

安装机器人框架

我们现在将使用 pip – python 包管理器来安装机器人框架,其命令如下 -

命令

pip install robotframework
安装机器人框架

安装完成后,您可以检查安装的机器人框架的版本,如下所示 -

命令

robot --version
框架已安装

所以,我们可以看到Robot Framework 3.0.4已安装。

安装 wxPython

我们需要 wxPython for Robot Framework Ride,它是 Robot Framework 的 IDE。

对于 Windows 来说,要获取 wxPython 所需的下载,请访问以下 URL -

https://sourceforge.net/projects/wxpython/files/wxPython/2.8.12.1/

并且,根据您的 Windows 操作系统下载适用于 Windows 的 32 位或 64 位 wxpython。

安装 wxPython

下载 32 位 wxPython 并安装它。

位 wxPython

安装完成后,它会打开命令行并自动运行一些命令,如下所示 -

位wxPython Ex

wxPython 现已安装。RIDE Ide 需要此模块才能用于下一步的 Robot Framework。

在 Linux 上,您应该能够使用包管理器安装 wxPython。例如,在基于 Debian 的系统(例如 Ubuntu)上运行 sudo apt-get install pythonwxgtk2.8 应该就足够了。

在 OS X 上

,您应该使用从 wxPython 下载页面找到的 wxPython 二进制文件。wxPython2.8 仅提供 32 位版本,因此 Python 也必须在 32 位模式下运行。这可以通过运行全局来完成

> defaults write com.apple.versioner.python Prefer-32-Bit -bool yes

或者,仅用于 RIDE 执行 -

> VERSIONER_PYTHON_PREFER_32_BIT=yes ride.py

安装骑行

Ride 是机器人框架 IDE。我们可以使用pip来安装它,如下所示。

命令

pip install robotframework-ride
安装骑行

安装完成后,打开命令提示符并键入以下命令以打开 Ride-IDE。

命令

ride.py

上述命令打开 IDE,如下所示 -

骑乘IDE

这样我们就完成了 Robot Framework 的安装,可以开始使用它了。

结论

我们现在知道如何安装 python、pip、机器人框架,并安装 RIDE 以使用机器人框架中的测试用例。

机器人框架-Ride介绍

Ride 是 Robot Framework 的测试编辑器。此外,我们将在 Ride 中编写测试用例。要启动 Ride,我们需要运行如下所示的命令。

命令

ride.py
机器人框架测试

上述命令将打开 IDE,如下面的屏幕截图所示 -

机器人框架IDE

在本章中,我们将浏览编辑器以了解 IDE 中可用的选项和功能。这些选项和功能将帮助我们测试我们的项目。

创建新项目

转到文件并单击新建项目,如下所示 -

创建新项目

单击“新建项目”时,将出现以下屏幕。

创建新项目

输入项目名称。创建路径是保存项目的路径。如果需要,您可以更改位置。项目可以保存为文件或目录。您还可以将项目保存为 ROBOT、TXT、TSV 或 HTML 等格式。在本教程中,我们将使用 ROBOT 格式以及如何编写和执行测试用例。

现在,我们将按照如下所示的方式将项目添加为文件。该项目名为“测试”,项目创建后会出现以下屏幕。

测试用例

项目的名称显示在左侧,在右侧我们可以看到三个选项卡“编辑”、“文本编辑”和“运行”。

编辑在 UI 上有很多选项,如上所示。在本节中,我们可以添加运行测试用例所需的数据。我们可以导入库、资源、变量、添加标量、添加列表、添加字典和添加元数据。

在“编辑”部分中添加的详细信息将在下一个选项卡“文本编辑”中看到。您可以在文本编辑部分编写代码。

编辑部分

如果在文本编辑中添加了任何更改,则会在“编辑”部分中看到。因此,“编辑”和“文本编辑”选项卡相互依赖,并且所做的更改将在两者上看到。

一旦测试用例准备好,我们就可以使用第三个选项卡“运行”来执行它们。

第三个选项卡运行

运行界面如上图所示。它允许运行测试用例,并提供启动、停止、暂停、继续、下一个测试用例、跳过等选项。您还可以为正在执行的测试用例创建报告、日志。

要创建测试用例,我们必须执行以下操作 -

右键单击创建的项目,然后单击新测试用例,如下所示 -

项目已创建

单击“新建测试用例”后,将出现一个屏幕,如下所示 -

新测试用例

输入测试用例的名称并单击“确定”。我们已将测试用例保存为 TC0。保存测试用例后,将出现以下屏幕。

新测试用例

测试用例具有文档、设置、拆卸、标签、超时和模板等选项。它们上面有一个编辑按钮;单击该按钮后会出现一个屏幕,您可以在其中输入每个选项的详细信息。我们将在后续章节中讨论这些细节的各个参数。

测试用例可以以表格格式编写,如下所示。机器人框架测试用例是基于关键字的,我们可以使用内置关键字或从库导入的关键字来编写测试用例。我们还可以在robot框架中创建用户定义的关键字、变量等。

导航栏中有可用于运行/停止测试用例的快捷方式,如下所示 -

用户定义的关键字

可以使用搜索关键字选项,如下面的屏幕截图所示 -

截屏

要获取机器人框架可用的关键字列表,只需按表格格式按 ctrl+space 即可,如下所示,它将显示所有可用的关键字 -

关键词列表

如果您忘记了关键字,这将帮助您获取详细信息。我们有每个关键字的详细信息。详细信息还显示了如何使用相关关键字。在下一章中,我们将学习如何在ride中创建第一个测试用例。

结论

在本章中,我们了解了 RIDE 的可用功能。我们还学习了如何创建测试用例并执行它们。

机器人框架 - 使用 Ride 的第一个测试用例

我们将探索 RIDE 并研究我们的第一个测试用例。

从命令提示符打开 Ride,或者您可以在桌面上创建 Ride 快捷方式。

从命令行

ride.py

从桌面

进入安装ride的路径;对于 Windows,它是C:\Python27\Scripts

从桌面

右键单击ride.py,然后单击发送到->桌面(创建快捷方式)。

发送桌面

您现在将在桌面上看到一个骑行图标。您可以单击它来打开骑行编辑器。

让我们从ride 中的第一个测试用例开始。打开编辑器并单击“文件”->“新建项目”。

第一个测试用例

单击“新建项目”并输入项目名称。

新项目

父目录是保存项目的路径。如果需要,您可以更改路径。我创建了一个名为 robotsframework 的文件夹,并将所有文件保存在该文件夹中。

家长目录

FirstTestCase项目已创建。

要创建测试用例,请右键单击该项目。

右键点击

单击新建测试用例

新测试用例 Exx

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

命名测试用例

对于创建的测试用例显示了 3 个选项卡 -编辑、文本编辑和运行

“编辑”选项卡有两种格式 - 设置和表格。我们将在后续部分中讨论这两种格式。

设置格式

在设置中,我们有文档、设置、拆卸、标签、超时和模板。

文档

您可以添加有关测试用例的详细信息,以便将来轻松参考。

文档

单击“确定”保存文档。

设置和拆卸

如果有分配给测试用例的设置,它将在测试用例执行之前执行,而测试设置将在测试用例完成拆卸之后执行。我们将在后续章节中详细介绍这一点。我们的第一个测试用例现在不需要它,可以将其保留为空。

标签

这用于标记测试用例——包括、排除特定的测试用例。您还可以指定是否有任何测试用例是关键的。

暂停

这用于设置测试用例的超时。我们暂时将其保留为空。

模板

这将具有用于测试用例的关键字。它主要用于数据驱动的测试用例。高级用户定义关键字在模板中指定,测试用例用于将数据传递给关键字。

在表格格式中,我们将编写第一个测试用例并执行相同的命令以查看输出。

在此测试用例中,我们将添加一些日志并查看其输出。请考虑以下屏幕截图来理解这一点 -

表格格式

我们使用关键字Log来记录消息,如上所示。

根据编辑中指定的关键字,我们可以在文本编辑中获取代码,如下所示 -

指定关键字

您还可以在文本编辑中编写测试用例,这同样会反映在表格格式中。现在让我们运行测试用例并查看输出。

要运行测试用例,我们需要单击“开始”,如下所示 -

反映表格格式

单击开始,这是测试用例的输出 -

输出

我们的测试用例已经成功执行,详细信息如上所示。它的状态为PASS

我们还可以在报告和日志中看到测试用例执行的详细信息,如下突出显示。

案件执行

单击报告,它会在新选项卡中打开详细信息,如下所示

案例报告

在报告中,它提供了诸如开始时间、结束时间、日志文件路径、测试用例状态等详细信息。

单击报告右上角或“运行”屏幕中的“日志”。

以下是日志文件的详细信息 -

日志档案

日志文件提供了测试执行的详细信息以及我们为测试用例提供的关键字的详细信息。

在报告和日志文件中,我们得到绿色的状态。

现在让我们进行一些会导致测试用例失败的更改并查看输出。

日志输出

在上面的测试用例中,Log关键字是错误的。我们将运行测试用例并查看输出 -

记录关键字

我们看到测试用例失败了。我已经突出显示了它讲述测试用例的错误。

现在将看到报告和日志输出。来自报告 -

日志输出报告

来自日志

来自日志

当测试用例失败时,颜色将更改为红色,如上所示。

结论

在本章中,我们介绍了一个简单的测试用例,并显示了执行过程中看到的结果。报告和日志显示测试用例执行的详细信息。

编写和执行测试用例

在本章中,我们将学习如何编写和执行测试用例。我们将在本章中涵盖以下领域 -

  • 项目设置
  • 导入库
  • 以表格格式编写测试用例
  • 使用标签执行测试用例
  • 使用测试用例的资源文件

项目设置

运行命令ride.py启动RIDE IDE。

命令

骑行.py
项目设置

单击文件 -> 新项目,如下所示 -

新项目设置

单击“新建项目”后,屏幕将显示如下所示 -

项目设置屏幕

新项目将类型显示为文件或目录。默认情况下,选择“文件”。我们将单击“目录”来创建测试套件,该目录中可以有许多测试套件。每个套件都有测试用例。

我们现在将使用 ROBOT 格式。

机器人格式

Parent-Directory 是将创建writingTestCases目录的路径。单击“确定”保存测试套件目录。

编写测试用例

右键单击创建的目录,然后单击“新建套件”。您还可以在其中创建包含测试套件的子目录。

现在,我们将从创建测试套件开始,如下所示 -

测试套件创建

添加套件创建

单击“确定”保存测试套件。

现在您可以将测试用例添加到套件中。右键单击创建的测试套件,如下所示 -

保存测试套件

单击新建测试用例。它将显示添加测试用例名称的屏幕,如下所示 -

显示屏

单击“确定”保存测试用例。我们已准备好项目设置。

导入库

Robot Framework有自己的内置库,不需要导入。但是我们需要与浏览器、数据库等进行交互。为了交互,我们需要导入库。

机器人框架支持的外部库列表在机器人框架官方网站上列出,如下所示 -

导入库

为了使用浏览器和 Web 应用程序,我们将导入 Selenium 库。使用 Selenium 库使用浏览器一章中讨论了安装过程。

要导入库,我们需要单击主项目。在右侧,设置将显示“添加导入”选项,如下所示 -

导入库

单击“库”并输入库的名称,如下所示 -

名称库

单击“确定”保存库。

设置将显示在设置中,如下所示 -

显示的

我们需要重复相同的步骤并为创建的测试套件添加库。单击创建的测试套件并导入库,如下所示 -

套件已创建

当您单击左侧的测试用例时,它将显示表格格式,您可以在其中输入关键字。现在,您可以使用内置关键字和 selenium 库中提供的关键字。

以表格格式编写测试用例

这是一个简单的测试用例,它在 Chrome 浏览器中打开 URL。

编写测试

下面显示了测试用例的详细信息 -

*** Settings ***
Library SeleniumLibrary

*** Test Cases ***
TC1
   Open Browser https://www.tutorialspoint.com/ chrome
   Maximize Browser Window
   Close Browser

我们将在同一项目中再添加一个测试用例:TC2。

同一个项目
*** Settings ***
Library SeleniumLibrary

*** Variables ***
${number} 100

*** Test Cases ***
TC1
   Open Browser https://www.tutorialspoint.com/ chrome
   Maximize Browser Window
   Close Browser

TC2
   ${a} Set Variable Hi
   Log ${a}
   ${b} Set Variable If ${number}>0 Yes No
   Log ${b}

我们可以在创建的测试套件下添加多个测试用例。单击“运行”以执行测试用例。执行将根据添加的测试用例的数量进行 -

多个测试用例

使用标签执行测试用例

如果您只想运行测试用例 TC2,您可以对其进行标记。单击测试用例,然后单击跨标签编辑,如下所示 -

执行测试用例

单击“确定”保存标签。在运行中添加标签名称,如下所示 -

标签名

我们选择了选项 ->仅使用这些标签运行测试并在其中添加了标签名称。现在,它将仅运行那些具有标签名称的测试用例。您可以指定任何名称并根据标签名称对测试用例进行分组并运行相同的测试用例。您还可以使用标签来跳过测试用例。

添加的标签名称

现在执行时我们只能看到TC2在运行。

使用测试用例的资源文件

机器人框架有资源选项,您可以在其中导入要与测试用例一起使用的机器人文件。

我们创建的测试用例 TC1 使用以下关键字 -

资源文件

我们使用了像这样的关键字 -

  • 打开浏览器
  • 最大化浏览器窗口
  • 关闭浏览器

我们将为上述测试用例使用用户定义的关键字。用户定义的关键字将在机器人文件中可用,该文件将用作资源。

我们将在同一目录中创建一个文件并编写关键字,如下所示 -

请注意关键字的详细信息,即如何创建用户定义的关键字,请参阅Robot Framework - 使用关键字章节中的说明。

我们创建了一个名为“测试浏览器”的用户定义关键字,如 browseropen.robot 文件所示 -

*** Settings ***
Library SeleniumLibrary

*** Variables ***
${url} https://www.tutorialspoint.com/
${browser} chrome

*** Keywords ***
Test Browser
   Open Browser ${url} ${browser}
   Maximize Browser Window

该文件包含各种选项,例如设置、变量和关键字。请注意,我们不能在文件内编写测试用例以用作资源。我们将上传上述文件作为测试套件的资源,如下所示。

选择测试套件。在左侧,单击资源选项,如下所示 -

资源选项

单击资源,它将询问导入机器人文件的路径 -

导入机器人文件

如上所示提及文件存储的路径,然后单击“确定”添加资源。它将显示如下 -

添加资源

现在,我们将更改测试用例 TC1,其关键字如下所示 -

改变测试

我们将从资源文件中将用户定义的关键字添加到 TC1,即测试浏览器关键字 -

测试浏览器

上传的资源文件如下所示 -

文件已上传

用户定义的关键字用于测试用例 TC1。

我们现在将执行测试用例 -

执行测试用例

我们已经通过了两个测试用例。现在让我们查看报告和日志详细信息。

报告

报告测试用例

日志

记录测试用例

结论

本章详细介绍了如何编写测试用例、执行测试用例、如何标记测试用例、使用资源等。

关键字和数据驱动的测试用例

可以使用关键字或数据驱动风格来测试测试用例的工作流程。如果您想使用不同的输入测试工作流程,可以使用数据驱动的测试用例来完成相同的操作。我们将研究一个示例来完成以下测试用例方法 -

  • 关键词驱动风格
  • 数据驱动风格

关键词驱动风格

我们将进行一个项目设置来展示关键字驱动样式的工作原理。

从命令行使用ride.py打开ride 。

关键词驱动风格

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

关键词驱动风格 Ex

该项目的名称是keywordstyle。单击“确定”保存项目。在此项目中,我们将创建一个用户关键字,如下所示。

右键点击项目名称,点击New User Keyword,如下图

新用户关键字

它将显示如下屏幕 -

显示屏Ex

输入关键字的名称及其所采用的参数。这里我们将关键字命名为“显示消息”。Keyword Display Message的作用是,当调用它时,会记录一条消息。所以我们需要对其进行论证。因此,在上面的示例中,参数将是标量变量 ${msg}。

记录消息

单击“确定”保存用户关键字。现在我们需要编写关键字需要执行的操作。因此,它将具有如下所示的表格格式,我们可以在其中提供机器人框架可用的库关键字或内置关键字。

在这里,我们将使用 Robot Framework 提供的简单 Log 关键字,如下所示 -

记录关键字Ex

要获取 Robot 框架可用的更多关键字,请在表列中按 ctrl + 空格键,如下所示 -

表列

所以我们想要在测试用例中使用的关键字已经准备好了。user 关键字的名称是Display Message ,它采用一个名为${msg}的参数。

现在让我们在简单的关键字驱动样式测试用例中使用此关键字。为此,我们需要创建测试用例。右键单击创建的项目名称。现在,单击“新建测试用例” -

关键词驱动

简单的关键字

为测试用例命名并单击“确定”。

我们完成了项目设置,现在将为关键字驱动样式编写测试用例。

在测试用例中,我们使用了用户定义的关键字以表格格式显示消息,如下所示 -

用户定义的关键字Ex

我们使用了如上所示创建的关键字并传递了值 Hello World。

我们将执行测试用例 TC1 并检查输出 -

执行测试用例Ex

在上面的示例中,我们编写了一个简单的测试用例,它记录消息,并且执行测试用例时输出Hello World。我们可以看到日志中打印出Hello World。这里测试用例也通过了。

数据驱动风格

我们将在同一项目中再创建一个测试用例。我们将测试用例的名称命名为 TC2。

更多测试用例

要使用数据驱动风格,我们需要创建模板。模板将采用高级关键字的名称,这是一个用户定义的关键字,就像我们一开始创建的名为“显示消息”的关键字一样。该模板的参数将以测试用例的形式发送。我们可以将不同的值传递给该模板关键字。当您想要使用不同的数据测试场景时,主要使用数据驱动方法。

一旦测试用例被保存。单击测试用例,显示如下 -

数据驱动风格

单击模板的编辑按钮并添加用户定义的关键字。

编辑按钮

输入模板的用户关键字,然后单击“确定”保存模板。

用户关键词

显示消息关键字采用一个名为 ${msg} 的参数。这是一个标量变量。此测试用例中传递的详细信息将充当用户定义的关键字“显示消息”的参数。

关键字 显示信息

在TC2中,我们添加了Template Display Message(用户自定义关键字)。我们以表格形式给出了消息。

现在让我们执行测试用例。

模板显示信息

我们可以看到 Run 执行了两个测试用例。TC1 显示的输出是 Hello World。这是我们向用户关键字显示消息提供的消息。

对于 TC2,我们使用 Display Message 作为模板。我们将“我的第一个测试用例”“测试模板”作为 TC2 中的值传递。由于用户关键字 Display Message 在内部使用 Log Keyword,因此它会在日志中显示消息,如上所示。

结论

我们在本章中使用了关键字样式和数据驱动样式,并了解了两者的工作原理。数据驱动风格以高级用户定义的关键字为模板,所有测试用例都充当模板的值。

使用 Selenium 库与浏览器一起工作

在本章中,我们将学习如何在ride中使用Robot Framework和Selenium Library与浏览器一起工作。

  • Ride 中的项目设置
  • 导入Selenium库
  • 使用 Chrome 浏览器的测试用例
  • 使用 Firefox 浏览器的测试用例

骑行中的项目设置

我们将首先在 Ride 中创建一个与浏览器一起使用的项目。从命令行使用ride.py 打开ride。

骑行中的项目设置

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

给你的项目命名

给出的名称是 BrowserTestCases。单击“确定”保存项目。右键单击创建的项目名称,然后单击“新建测试用例” -

浏览器测试用例

浏览器测试用例 Ex

为测试用例命名并单击“确定”。

取名字

我们已经完成了项目设置。现在,我们将为浏览器编写测试用例。

导入Selenium库

为了与浏览器一起工作,我们需要在robot中导入selenium库。我们可以这样做 -

前往https://robotframework.org/

导入Selenium库

在左侧,选择“库”选项。

库选项

从上面选择外部选项,它将列出所有可供使用的库。

外部选项

单击 SeleniumLibrary。

您将被重定向到 github 存储库,如下所示 -

github 仓库

对于seleniumlibrary的安装,我们可以使用github中的命令并使用pip进行安装。

命令

pip install --upgrade robotframework-seleniumlibrary
Selenium库

Selenium 库安装在 python 的 lib 文件夹内,如下所示 -

库已安装

安装完成后,我们必须在 Ride 中导入库,如以下步骤所示。

单击左侧的项目并使用“添加导入”中的库 -

添加导入

单击“库”后,将出现一个屏幕,您需要在其中输入库名称 -

单击库

单击“确定”,该库将显示在设置中。

显示的设置

给定的名称必须与站点包中安装的文件夹的名称匹配。如果名称不匹配,库名称将为红色,如下所示 -

站点包

红色的库导入表示该库在 python 中不存在。至此,我们已经完成了selenium库的导入。

使用 Chrome 浏览器的测试用例

要在 Robot 中使用 Chrome 浏览器,我们需要首先安装 Chrome 的驱动程序,以便与 Selenium 配合使用。这些驱动器可在 Selenium 网站上找到 - https://www.seleniumhq.org/

Chrome浏览器

单击“下载 Selenium”,如上面的屏幕截图所示。

在下载部分,转至 Third Party Browser Drivers NOT DEVELOPED by seleniumhq并选择 Google Chrome 驱动程序,如下面突出显示的部分所示

下载部分

这里我们有可用于浏览器的各种驱动程序的列表。对于 Chrome,单击 Google Chrome 驱动程序并根据您的操作系统下载最新的驱动程序。

镀铬驱动程序

单击最新版本。它将根据操作系统(windows、linux 和 mac)显示下载。

操作系统

从上面的列表中下载根据您的操作系统的版本。它会下载 zip 文件。文件下载后,解压缩并将 .exe 驱动程序文件复制到 python 文件夹。

我们将文件复制到C:\Python27\Scripts

压缩文件

现在我们已经完成了 chrome 驱动程序的安装。我们可以开始编写将打开浏览器和关闭浏览器的测试用例。

返回骑行,输入关键词打开浏览器。

Ride 可帮助您使用与其内置工具一起使用的关键字。输入命令并按ctrl+空格键。您将获得该命令的所有详细信息,如下所示

Ctrl 空格键

它提供了命令的详细信息以及如何使用它的示例。在测试用例中,我们将在 chrome 中打开网站https://www.tutorialspoint.com/,测试用例详细信息如下 -

ctrl 空格键 Ex

现在让我们运行这个测试用例来查看输出 -

运行测试用例

运行测试用例Ex

测试用例已通过;我们可以看到该网站已在chrome浏览器中打开。

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

测试用例通过

以下是上述测试用例执行的报告和日志的详细信息。

报告

执行的测试用例

日志

测试用例执行日志

日志中的测试用例详细信息

测试用例日志

测试用例日志Ex

测试用例日志 Exs

使用 Firefox 浏览器的测试用例

安装 Firefox 驱动程序并将其保存在 python 脚本文件夹中。

火狐浏览器测试用例

对于火狐浏览器

适用于 Firefox Ex

结论

我们已经了解了如何安装 Selenium 库和浏览器驱动程序以与 Robot 框架中的浏览器配合使用。使用 selenium 库关键字,我们可以在浏览器中打开任何给定的链接并与其交互。测试用例执行的详细信息以报告和日志的形式提供,其中给出了执行所需的时间。

机器人框架 - 使用文本框

对于测试来说,了解如何与浏览器交互并定位 html 元素变得很重要。使用机器人框架处理输入字段非常容易。在本章中,我们将学习如何使用 Selenium 库处理文本框。要使用输入字段 - 文本框,我们需要定位器,它是该文本框的主要唯一标识符,可以是 id、名称、类等。

在本章中,我们将讨论以下领域 -

  • 文本框测试的项目设置
  • 在搜索文本框中输入数据
  • 单击搜索按钮

文本框测试的项目设置

我们将首先在 Ride 中创建一个与浏览器一起使用的项目。从命令行使用ride.py 打开ride。

文本框测试

单击“新建项目”并输入项目的名称,如下所示。

文本框测试Ex

该项目的名称是Textbox。单击“确定”保存项目。右键单击创建的项目名称,然后单击“新建测试用例” -

项目创建前

新项目已创建

为您的测试用例命名并单击“确定”保存它。我们现在已经完成了项目设置。此外,我们将为文本框编写测试用例。由于我们需要 Selenium 库,因此我们需要在项目中导入它。

单击左侧的项目并使用“添加导入”中的“库”。

库添加导入

单击“库”后,将出现一个屏幕,您需要在其中输入库名称 -

单击库Ex

单击“确定”,该库将显示在设置中。

单击库Ex

给定的名称必须与站点包中安装的文件夹的名称匹配。

如果名称不匹配,库名称将显示为红色,如下图所示 -

截图前

在文本框中输入数据

我们现在要编写测试用例。测试用例详细信息如下 -

要使用文本框,我们需要一个定位器。定位器是文本框的标识符,如 id、名称、类等。例如,如果您使用 -

  • 文本框的name属性,它必须是 name - Nameofthetextbox 或 name=Nameofthetextbox

  • 文本框的id,它将是 id:idoftextbox 或 id=idoftextbox

  • 文本框的类,它将是 class − classfortextbox 或 class=classfortextbox

现在,我们将为ride中的文本框添加测试用例的详细信息。以下是为文本框测试用例输入的关键字 -

输入的关键字
  • 打开浏览器- 关键字打开给定 URL 和指定浏览器的浏览器。

  • 输入文本- 此关键字适用于输入类型,并将查找定位器名称:在网站https://www.tutorialspoint.com/上搜索,而 angularjs 是我们要在文本框中输入的值。

  • Click按钮用于点击位置类为:gsc-search-button-v2的按钮。

我们现在将执行相同的操作 -

点击按钮

单击“搜索”图标后,将出现一个屏幕,如下图所示 -

搜索图标

现在让我们看看报告和日志详细信息 -

报告

日志详细信息

日志

日志详细信息

日志详细信息

结论

我们已经了解了如何在机器人框架中使用 selenium 库与文本框进行交互。使用机器人框架提供的关键字和导入的库,我们可以找到文本框并输入数据并进行测试。

机器人框架 - 使用单选按钮

对于测试来说,了解如何与浏览器交互并定位 html 元素变得很重要。使用机器人框架处理输入字段非常容易。在本章中,我们将学习如何使用 Selenium 库来使用单选按钮。要使用单选按钮,我们需要定位器 - 该单选按钮的主要唯一标识符。

我们将在这里讨论以下内容 -

  • 单选按钮测试的项目设置
  • 单选按钮的测试用例

单选按钮测试的项目设置

我们将首先在 Ride 中创建一个与浏览器一起使用的项目。从命令行使用ride.py 打开ride。

单选按钮测试

单击“新建项目”并输入项目的名称,如下面的屏幕截图所示。

单选按钮测试名称

给出的名称是RadioButton。单击“确定”按钮保存项目。

右键单击创建的项目名称,然后单击“新建测试用例” -

单选按钮测试名称新

单选按钮测试名称新闻

为测试用例命名并单击“确定”保存它。我们已经完成了项目设置,现在将为单选按钮编写测试用例。由于我们需要 Selenium 库,因此我们需要在项目中导入它。

单击左侧的项目并使用“添加导入”中的“库”

左侧图书馆

单击“库”后,将出现一个屏幕,您需要在其中输入库名称 -

单击库后

单击“确定”,该库将显示在设置中。

单击显示的库后

给定的名称必须与站点包中安装的文件夹的名称匹配。如果名称不匹配,它将显示为红色,如下所示 -

站点包

单选按钮的测试用例

单选按钮测试用例将在定位器的帮助下选择一个单选按钮。

考虑单选按钮的以下 html 显示 -

<input type="radio" name="gender" value="male" checked> Male<br/>
<input type="radio" name="gender" value="female"> Female<br/>

对于单选按钮,名称是定位器。在上面的示例中,名称是 sex。我们还需要该值,以便我们可以选择所需的单选按钮。上例中的值为Male 和 Female

现在,我们将创建一个带有单选按钮的测试页面并在浏览器中打开它。现在,选择单选按钮的值。测试用例详细信息如下 -

  • 在 Chrome 中打开浏览器 - URL - http://localhost/robotframework/radiobutton.html

  • 输入单选按钮的详细信息

  • 执行测试用例

在编写测试用例的关键字时,请按 Ctrl + 空格键。您将获得该命令的详细信息。单选按钮的详细信息

单选按钮的详细信息

对于单选按钮,参数是组名称和值。以下是单选按钮选择测试用例的详细信息 -

单选按钮的参数

以下是单选按钮的测试页 -

单选按钮测试页

Radiobutton.html 的 HTML 代码

<html>
   <head>
      <title>Radio Button</title>
   </head>
   <body>
      <form name="myform" method="POST">
         <b>Select Gender?</b>
         <div><br/>
            <input type="radio" name="gender" value="male" checked> Male<br/>
            <input type="radio" name="gender" value="female"> Female<br/>
         </div>
      </form>
   </body>
</html>

在上面的表单中,我们计划选择女性,这是一个单选按钮。名称和值在测试用例中给出。现在,我们将执行测试用例并检查上述表单的复选框的选择。

让我们执行测试用例并查看浏览器中的显示 -

执行测试用例

执行测试用例时,它会打开 URL http://localhost/robotframework/radiobutton.html并选择我们在测试用例中给出的名称和值的 Female 单选按钮。

以下是 Ride 中的执行细节 -

Ride 中的执行细节

现在让我们查看报告和日志以了解更多详细信息。

报告详情

报告详情

日志详细信息

日志详细信息电台

测试用例的详细信息

测试用例的详细信息

结论

我们已经了解了如何通过将单选按钮的组名称赋予测试用例来选择单选按钮的值。使用机器人框架提供的关键字和导入的库,我们可以找到单选按钮并选择单选按钮的值。我们确实获得了使用机器人框架日志和报告执行的测试用例的详细信息。

机器人框架 - 使用复选框

对于测试来说,了解如何与浏览器交互并定位 html 元素变得很重要。使用机器人框架处理输入字段非常容易。在本章中,我们将学习如何使用 Selenium 库来使用复选框。要使用复选框,我们需要定位器,它是该复选框的主要唯一标识符。定位器可以是 id、name、class 等。

复选框测试的项目设置

我们将首先在 Ride 中创建一个与浏览器一起使用的项目。从命令行使用ride.py打开ride 。

复选框测试

单击“新建项目”并输入项目名称,如下面的屏幕截图所示。

复选框测试屏幕截图

该项目的名称是 Checkbox。单击“确定”保存项目。

右键单击创建的项目名称,然后单击新建测试用例-

复选框测试测试用例

复选框测试测试用例Ex

为测试用例命名并单击“确定”。我们已经完成了项目设置。现在我们将为复选框编写测试用例。由于我们需要 Selenium 库,因此我们需要在项目中导入它。

单击左侧的项目并使用“添加导入”中的“库”

复选框测试库

现在,单击库。将出现一个屏幕,您需要在其中输入库名称 -

复选框测试出现

单击“确定”,该库将显示在设置中。

显示复选框测试

给定的名称必须与站点包中安装的文件夹的名称匹配。如果名称不匹配,库名称将显示为红色 -

复选框测试站点包

复选框的测试用例

在测试用例中,我们将选中该复选框。要选中该复选框,我们需要