📜  机器人框架-使用变量

📅  最后修改于: 2020-12-04 05:33:42             🧑  作者: Mango


在本章中,我们将讨论如何在Robot Framework中创建和使用变量。变量用于保存值,该值可用于测试用例,用户定义的关键字等。

我们将讨论Robot Framework中可用的以下变量

  • 标量变量
  • 列表变量
  • 字典变量

我们将在Ride中的测试用例的帮助下了解每个变量的工作原理。

标量变量

标量变量将替换为其分配的值。标量变量的语法如下-

${variablename}

我们可以使用标量变量来存储字符串,对象,列表等。我们将首先创建一个简单的测试用例,并在其中使用标量变量。

在命令行中使用ride.py打开RIDE并创建一个新项目。

标量变量

单击新建项目

现在,为您的项目命名。

标量变量项目

给出的名称是变量。单击确定保存项目。

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

标量变量新测试用例

标量变量新测试用例

为测试用例命名,然后单击“确定”。

我们完成了项目设置,现在将为要在测试用例中使用的标量变量编写测试用例。由于我们需要Selenium库,因此需要在项目中导入相同的库。

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

标量变量添加导入

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

标量变量库

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

显示标量变量

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

如果名称不匹配,则库名称将以红色显示-

显示标量变量

标量变量测试用例

在上述测试用例中,我们对提供给测试用例的值进行了硬编码,例如URL,电子邮件,密码。所使用的值可以存储在变量中,而不是硬编码,我们可以在这些位置使用变量。

显示标量变量

要创建标量变量,请右键单击您的项目,然后单击“新建标量” ,如下所示:

测试案例标量变量Ex

单击New Scalar将打开以下屏幕,以创建变量以及在测试用例中使用该变量时我们需要替换的值。

我们在“名称”字段中获得$ {}。

标量变量字段

在这里,我们需要在花括号内输入变量的名称,如下面的屏幕所示:

标量变量屏幕

变量的名称为$ {url}。值是-http://localhost/robotframework/login.html

我们添加了如上所述的评论。单击确定以保存标量变量。变量的详细信息如下所示添加-

标量变量注释

变量名称显示在创建的项目下,如下所示:

标量变量已创建

现在让我们使用在测试用例内部创建的标量变量。

URL硬编码的测试用例

标量变量硬编码

在上述测试案例中,我们必须将URL替换为上面刚刚创建的变量。

URL具有标量变量的测试用例

标量变量网址

现在,我们将运行测试用例,以查看它是否正在从变量中获取URL。下面是运行它时得到的输出。 URL http://localhost/robotframework/login.html是从我们创建的标量变量中选取的。

标量变量已选择

执行细节

标量变量执行

使用变量的优点是您可以更改该变量的值,并将其反映在所有测试用例中。您可以在该项目下创建的许多测试用例中使用变量。当您想更改某些内容时,值的硬编码可能是一个严重的问题,您将不得不转到各个测试用例并更改其值。将变量放在一个位置可以使我们灵活地测试我们想要的变量值的方式。

现在,我们将研究称为List变量的下一类变量。

列表变量

列表变量将具有一个值数组。为了获得值,列表项作为参数传递给列表变量。

句法

@{variablename}

假设我们具有值A,B。要引用这些值,我们需要按如下方式传递列表项-

@{variablename}[0] // A
@{variablename}[1] // B

要添加列表变量,请在项目上单击鼠标右键,然后单击“新建列表变量”

标量变量列表

单击“新建列表变量”后,将出现一个屏幕,我们可以在其中输入值-

标量变量出现

名称为@ {},后跟值。它还选择了4列。现在,我们将仅使用列1并创建list变量,该变量将具有值,电子邮件ID和密码,如下所示-

标量变量密码

列表变量的名称为@ {LOGIN_DETAILS} ,给定的值为admin@gmail.comadmin ,其登录页面具有电子邮件ID和密码。

单击确定以保存列表变量。变量在项目下方列出,如下所示-

标量变量列出

设置标签中列出了使用的变量的详细信息-

标量变量设置

现在,我们将在测试用例中添加list变量,如下所示。

在这里,我们对输入文本和密码进行了硬编码。现在,我们将其更改为使用列表变量。

标量变量硬编码值

使用列表变量

标量变量列表变量

现在,我们将执行测试用例,以查看它是否从列表变量中获取值-

标量变量执行

它已从列表变量中获取了电子邮件ID和密码,如上面的测试屏幕所示。

以下屏幕快照显示了相同的执行详细信息-

标量变量屏幕截图

在下一节中,我们将学习字典变量。

字典变量

字典变量类似于列表变量,其中我们将索引作为参数传递;但是,对于字典变量,我们可以存储详细信息-键值形式。在测试用例中使用时,而不是将索引用作0、1等,将更易于引用。

句法

&{Variablename}

假设我们将值存储为key1 = A,key2 = B。在测试用例中将其称为-

&{Variablename}[key1] // A
&{Variablename}[key2] // B

让我们在Ride中创建字典变量。

右键单击Project,然后单击New Dictionary Variable

字典变量

单击“新建字典变量”后,将显示如下屏幕:

屏幕出现

屏幕上的默认名称为&{},并且具有“值”和“列”选项。

我们将输入要在测试用例中使用的名称和值。

名称值

单击确定保存变量。该变量将在项目下以及以下设置中列出-

保存变量

保存变量设置

我们将更改测试用例以采用字典值。

变更测试用例

我们将更改为字典变量,如下所示。

使用字典变量

使用字典变量

单击运行后,我们得到以下内容-

运行字典变量

执行细节如下-

执行字典变量

到目前为止,我们已经看到了“编辑并运行”选项卡。如果是TextEdit,我们将编写测试用例的详细信息。我们还可以添加TextEdit中所需的变量。

测试用例

运行标签

在上述测试案例中,我们使用了标量变量和字典变量。这是到目前为止TextEdit中的代码;这是基于编写的测试用例-

使用的标量变量

使用的变量以红色突出显示。我们还可以直接在TextEdit中创建我们想要的变量,如下所示-

我们添加了一个名为$ {new_url}的标量变量,给出的值为https://www.tutorialspoint.com/

单击左上角的Apply Changes按钮,该变量将显示在项目下,如下所示-

文字编辑

同样,其他变量-列表和字典变量可以在需要时直接在TextEdit选项卡中创建。

结论

我们已经看到了如何创建和使用变量。机器人框架中支持三种类型的变量-标量,列表和字典。我们详细讨论了所有这些变量的工作方式。