Selenium 简明教程

Selenium IDE - Verification Points

Selenium IDE 允许在测试用例中添加多个验证点,以检查应用程序是否按预期工作。在 Selenium IDE 中使用的每个命令都称为 Selenese 命令。使用 Selenese 命令,我们对 Selenium IDE 中的网页应用程序执行所有测试活动。

Selenese 命令由三种类型组成 - 操作、断言和访问器。断言命令有助于在 Selenium IDE 测试中添加验证点。断言命令用于检查被测应用程序的状态。它有三个子类型,即断言、验证和 waitfor。

How to Insert Verification Points While Recording?

可以在记录测试时向 Selenium IDE 中的测试添加验证点。在下图中,我们通过右键单击 Name: 标签旁边的输入框添加了验证点 - 断言。然后我们选择了选项 Selenium IDE ,最后,我们必须选择选项 Assert 。通过这样做,所有可用的断言命令都将准备就绪,可以进行选择。

selenium verification points 1

在下图中,我们通过右键单击 Name: 标签旁边的输入框添加了验证点 - 验证。然后我们选择了选项 Selenium IDE ,最后,我们必须选择选项 Verify 。通过这样做,所有可用的验证命令都将准备就绪,可以进行选择。

selenium verification points 2

在下图中,我们通过右键单击 Name: 标签旁边的输入框添加了验证点 - 等待。然后我们选择了选项 Selenium IDE ,最后,我们必须选择选项 Wait For 。通过这样做,所有可用的等待命令都将准备就绪,可以进行选择。

selenium verification points 3

要更详细地了解如何设置 Selenium IDE,请参阅链接 - Selenium IDE Installation

Basic Verification Commands in Selenium IDE

以下是 Selenium IDE 中可用的各种 verification commands

  1. assert(variable, expected value)

  2. assert alert(alert text)

  3. assert checked(locator)

  4. assert confirmation(text)

  5. assert editable(locator)

  6. assert element present(locator)

  7. assert element not present(locator)

  8. assert not checked(locator)

  9. assert not editable(locator)

  10. 断言未选择值(定位器,文本)

  11. assert not text(locator, text)

  12. assert prompt(text)

  13. assert selected value(locator, text)

  14. assert selected label(locator, text)

  15. assert text(locator, text)

  16. assert title(text)

  17. assert value(locator, text)

  18. verify(variable, expected value)

  19. verify checked(locator)

  20. verify editable(locator)

  21. verify element present(locator)

  22. verify element not present(locator)

  23. verify not editable(locator)

  24. 验证未选择值(定位器,文本)

  25. verify not text(locator, text)

  26. verify selected label(locator, text)

  27. verify selected value(locator, text)

  28. verify text(locator, text)

  29. verify value(locator, text)

  30. 等待元素可编辑(定位器,等待时间)

  31. 等待元素不可编辑(定位器,等待时间)

  32. 等待元素不存在(定位器,等待时间)

  33. 等待元素不可见(定位器,等待时间)

  34. 等待元素存在(定位器,等待时间)

  35. 等待元素可见(定位器,等待时间)

Example

让我们以下面页面的示例为例,其中我们将会单击 Created 链接。

selenium verification points 4

我们将会验证其页面标题为 Selenium Practice - Links 。点击创建链接之后,我们还将验证文本 - Link has responded with status 201 and status text Created

selenium verification points 5

要遵循的步骤如下所示 -

Step 1 − 单击浏览器上在安装后显示的 Selenium IDE 扩展。

Step 2 − Selenium IDE 应该与它一起启动,应该显示一个显示该工具版本的欢迎消息。在下图中,安装的版本为 3.17.2。

除此之外,它还为我们提供了选择我们想使用该工具做什么的选项,例如在新项目中记录新测试、打开现有项目、创建新项目和关闭 Selenium IDE。

此外,还提供了带有文本 - the Selenium IDE project page 的链接,单击该链接将使我们进入 Selenium 集成开发环境文档页面。

Step 3 - 单击创建新项目链接,然后在为新项目指定名称下输入一个项目名称,比如说 Test8。最后,我们将单击确定按钮。

Step 4 − 我们现在在 Selenium IDE 中准备好了工作区。

Step 5 - 在命令字段中输入 open,在目标字段中输入 Selenium Automation Practice Form ,启动应用程序。

Step 6 - 在命令字段中输入验证标题,在目标字段中输入 Selenium Practice - Links。

Step 7 - 在命令字段中输入点击,xpath=// [@id="created"] in the Target field. Please note, xpath=// [@id="created"] 是链接定位符的值。

Step 8 - 在命令字段中输入等待元素可见,在目标字段中输入 xpath=/html/body/main/div/div/div[2]/div[1],在值字段中输入 30000。请注意,xpath=/html/body/main/div/div/div[2]/div[1] 是文本定位符的值。

Step 9 - 在命令字段中输入断言文本,在目标字段中输入 xpath=/html/body/main/div/div/div[2]/div[1],在值字段中输入链接已响应,状态为 201 并且状态文本已创建。请注意,xpath=/html/body/main/div/div/div[2]/div[1] 是文本的定位符值。

Step 10 − 在Command字段中输入close以关闭浏览器窗口。

selenium verification points 6

Step 11 − 单击出现在左侧窗格中的三个点,然后选择Rename选项。

Step 12 - 在重命名测试用例字段中输入一个名称,比如说 Test8,然后单击重命名。输入的名称将显示在 Selenium IDE 的左侧。

Step 13 − 从顶部单击Run all tests,然后等待测试执行完成。在我们的示例中,我们将看到Runs: 1, Failures: 0和一个绿色条表示测试已成功运行,没有失败。此外,已成功完成的消息出现在Log下方。

selenium verification points 7

在上面的示例中,我们已启动该应用程序,并使用断言命令 verify title 验证了其页面标题 - Selenium Practice - Links 。然后点击 Created link ,并使用断言命令 wait for element visible 等待文本 Link has responded with status 201 and status text Created 可见,然后使用另一个断言命令断言文本。

除此之外,所有的测试步骤(包括测试用例名称)都变为绿色,表示所有步骤均 PASS。所有在日志选项卡下显示的步骤均显示绿色 OK。

至此,我们对 Selenium IDE - 验证点教程的全面讲解就结束了。我们从描述什么是验证点、如何插入验证点、基本验证命令开始,并通过一个示例来说明如何将验证命令与 Selenium 一起使用。

这让你深入了解了 Selenium IDE 中的验证点。明智的做法是不断练习你所学到的内容,并探索与 Selenium 相关的其他内容,以加深你的理解并拓宽你的视野。