Selenium 简明教程
Selenium IDE - Control Flow
Selenium IDE 命令包含可将条件语句和循环添加到测试中的功能。这有助于仅在满足特定条件时运行一些步骤,或根据特定条件多次执行相同的步骤。
JavaScript Expressions
借助 JavaScript 表达式,可以验证待测应用程序中的条件。execute script 和 execute async script 命令用于在我们的测试中执行 JavaScript 代码并将结果保存到变量中以供将来使用。这些变量也可用于控制流命令。此外,JavaScript 表达式可与控制流命令一起使用。
Read More : Selenium IDE - JavaScript Functions
Basic Control Flow Commands on Conditional Branching
基本控制流命令及其配套命令如下 -
if
这是条件分支上的起始命令,可以与要评估的 JavaScript 命令或在 JavaScript 命令之前创建的变量一起使用。这是 if 命令的 Target 输入字段的一部分。
如果该表达式返回真值,则测试将运行 if 表达式之后的步骤,直到遇到下一个控制流命令,例如 else、else if 或 end。如果表达式返回假值,则它将跳转到以下条件命令,例如 else、else if 或 end。
Basic Control Flow Commands on Looping
以下列出了关于循环(允许重复一组命令/命令执行)的基本控制流命令 -
do
此命令用于开始一个循环。在 do 命令之后,将声明要执行的步骤。do 命令应以 repeat if 命令结束。repeat if 接受将在目标输入字段内执行的 JavaScript 表达式。do 命令后面的命令将初始执行,然后执行 repeat if 命令中的操作。
如果表达式返回 true 值,那么测试执行将移至下一个 do 命令,并重新执行模式。这会一直持续到条件不再得到满足或者出现无限循环的情况。默认尝试次数为 1000。可以通过在 repeat if 命令的 Value 字段中设置一个数字来修改此默认次数。
Example 1
我们以以下页面的示例来说明,我们将在其中使用条件分支控制流命令检查最上方出现的文本 - Welcome, Login In 。
要遵循的步骤如下所示 -
Step 1 − 单击浏览器上在安装后显示的 Selenium IDE 扩展。
Step 2 − Selenium IDE 应该与它一起启动,应该显示一个显示该工具版本的欢迎消息。在下图中,安装的版本为 3.17.2。
除此之外,它还为我们提供了选择我们想使用该工具做什么的选项,例如在新项目中记录新测试、打开现有项目、创建新项目和关闭 Selenium IDE。
此外,还提供了一个显示文本 - Selenium IDE project page 的链接,点击该链接将转到 Selenium 集成开发环境文档页面。
Step 3 − 单击创建新项目链接,然后输入项目名称,如 Please provide a name for your new project 下的 Test12。最后,我们将点击确定按钮。
Step 4 − 我们现在在 Selenium IDE 中准备好了工作区。
Step 5 − 在命令字段中输入 open,然后在目标字段中输入 selenium ,以启动应用程序。
Step 6 − 在命令字段中输入存储文本,xpath=// [@id="signInForm"]/h1 in the Target field and val in the Value field. Please note, xpath=// [@id="signInForm"]/h1 是文本的定位器值,val 是我们用来存储文本的变量。
Step 7 - 输入在命令字段中,且 ${val} ==="欢迎,登录" 在目标字段中。
Step 8 - 输入 echo 在命令字段中,且验证正确 在目标字段中。
Step 9 - 输入如果其他 在命令字段中,且 ${val} ==="欢迎,注册" 在目标字段中。
Step 10 - 输入 echo 在命令字段中,且验证不正确 在目标字段中。
Step 11 - 输入其他命令字段。
Step 12 - 输入 echo 在命令字段中,且无效测试 在目标字段中。
Step 13 - 输入结束 在命令字段中。
Step 14 - 输入关闭 在命令字段中,以关闭浏览器窗口。
Step 15 - 单击顶部运行所有测试,并等待测试执行完成。在我们的示例中,我们将看到:运行:1,失败:0,以及一根绿条表示测试在无任何失败的情况下成功运行。另外,完成成功的消息出现在日志中。
在上面的示例中,我们已经验证文本 - Welcome, Login In ,并在控制台中打印消息 - 验证正确。此外,我们获得了顶部的绿色勾形,表示该测试通过。
Example 2
让我们举一个例子,我们将在其中使用一个叫做 while 的循环控制流命令。
要遵循的步骤如下所示 -
Step 1 - 按照示例 1 中提到的执行步骤 1 到 4。
Step 2 - 输入执行脚本 在命令字段中,输入 1 在目标字段中,以及 val 在值字段中。
Step 3 - 输入 while 在命令字段中,以及 ${val} < 3 在目标字段中。
Step 4 - 输入 echo 在命令字段中,以及 ${val} 在目标字段中。
Step 5 - 输入执行脚本 在命令字段中,输入返回 ${val} + 1 在目标字段中,以及 val 在值字段中。
Step 6 - 输入结束 在命令字段中。
Step 7 - 单击顶部运行所有测试,并等待测试执行完成。在我们的示例中,我们将看到:运行:1,失败:0,以及一根绿条表示测试在无任何失败的情况下成功运行。另外,完成成功的消息出现在日志中。