Robot Framework – 使用变量
Robot Framework – 使用变量
在本章中,我们将讨论如何在 Robot Framework 中创建和使用变量。变量用于保存一个值,可用于测试用例、用户定义的关键字等。
我们将讨论以下 Robot Framework 中可用的变量
- 标量变量
- 列出变量
- 字典变量
我们将借助 Ride 中的测试用例了解每个变量的工作原理。
标量变量
标量变量将替换为它们分配的值。标量变量的语法如下 –
${variablename}
我们可以使用标量变量来存储字符串、对象、列表等。我们将首先创建一个简单的测试用例并在其中使用标量变量。
在命令行中使用ride.py打开RIDE并创建一个新项目。
单击新建项目。
现在,为您的项目命名。
给出的名称是variables。单击“确定”保存项目。
右键单击创建的项目名称,然后单击新建测试用例–
为测试用例命名,然后单击“确定”。
我们已经完成了项目设置,现在将为要在我们的测试用例中使用的标量变量编写测试用例。由于我们需要 Selenium 库,因此我们需要在我们的项目中导入相同的库。
单击左侧的项目并使用 Add Import 中的 Library –
单击库后,将出现一个屏幕,您需要在其中输入库名称 –
单击确定,库将显示在设置中。
给定的名称必须与安装在站点包中的文件夹的名称相匹配。
如果名称不匹配,库名称将显示为红色 –
标量变量的测试用例
在上面的测试用例中,我们对提供给测试用例的 URL、电子邮件、密码等值进行了硬编码。使用的值可以存储在变量中,而不是硬编码,我们可以在这些地方使用变量。
要创建标量变量,请右键单击您的项目,然后单击新建标量,如下所示 –
单击 New Scalar 将打开以下屏幕以创建变量以及在测试用例中使用变量时需要替换的值。
我们为 Name 字段获得 ${}。
在这里,我们需要在花括号内输入变量的名称,如下面的屏幕所示 –
变量的名称是 ${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
要添加列表变量,请右键单击项目并单击新建列表变量。
单击New List Variable 后,会出现一个屏幕,我们可以在其中输入值 –
名称以@{} 后跟值的形式给出。它还选择了 4 列。现在,我们将只使用第 1 列并创建列表变量,该变量将包含值、电子邮件 ID 和密码,如下所示 –
列表变量的名称是@{LOGIN_DETAILS}并且给出的值是[email protected]和admin,它具有登录页面的电子邮件 ID 和密码。
单击确定以保存列表变量。该变量列在项目下方,如下所示 –
使用的变量的详细信息列在设置选项卡中 –
现在,我们将在测试用例中添加列表变量,如下所示。
在这里,我们为输入文本和密码设置了硬编码值。现在,我们将更改它以使用列表变量。
使用列表变量
现在,我们将执行测试用例以查看它是否从列表变量中获取值 –
它已从列表变量中获取电子邮件 ID 和密码,如上面测试屏幕中所示。
以下屏幕截图显示了相同的执行细节 –
在下一节中,我们将了解字典变量。
字典变量
字典变量类似于列表变量,其中我们将索引作为参数传递;但是,在字典变量的情况下,我们可以存储详细信息 – 键值形式。在测试用例中使用时更容易引用,而不是使用索引作为 0、1 等。
句法
&{Variablename}
假设我们将值存储为 key1=A, key2=B。它将在测试用例中称为 –
&{Variablename}[key1] // A &{Variablename}[key2] // B
让我们在 Ride 中创建字典变量。
右键单击 Project 并单击New Dictionary Variable。
单击New Dictionary Variable 后,将出现一个屏幕,如下所示 –
屏幕中的名称默认为 &{} 并且它具有值和列选项。
我们将输入要在测试用例中使用的名称和值。
单击确定以保存变量。该变量将列在项目下和设置中,如下所示 –
我们将更改测试用例以获取字典值。
我们将更改为字典变量,如下所示。
使用字典变量
点击运行后,我们得到以下信息 –
执行细节如下 –
到目前为止,我们已经看到了“编辑和运行”选项卡。在 TextEdit 的情况下,我们编写了测试用例的详细信息。我们还可以在 TextEdit 中添加所需的变量。
测试用例
我们在上面的测试用例中使用了标量变量和字典变量。这是到目前为止 TextEdit 中的代码;这是基于编写的测试用例 –
使用的变量以红色突出显示。我们还可以直接在 TextEdit 中创建我们想要的变量,如下所示 –
我们添加了一个名为${new_url}的标量变量,给出的值为https://www.tutorialspoint.com/。
单击左上角的Apply Changes按钮,将在项目下看到变量,如下所示 –
同样,其他变量 – 列表和字典变量可以在需要时直接在 TextEdit 选项卡中创建。
结论
我们已经看到了如何创建和使用变量。机器人框架支持三种类型的变量 – 标量、列表和字典。我们详细讨论了所有这些变量的工作。