8. Selenium IDE 断言和验证

测试 Web 应用时,我们一直期望以某种方式发生很多事情。 如果没有,则我们将测试断言为失败,然后中止执行或记录该特定异常以进行进一步分析,然后继续进行测试活动。 因此,这两个决定在 Selenium 中产生了两组不同的命令-断言和验证。两者的主要区别在于,断言 将使测试失败,中止 当前测试用例的执行,而验证 将使测试失败,但是 继续运行 测试用例。

场景:

您可能希望检查页面第五段中是否有特定文本。 如果导航页面本身错误,执行这种检查有什么用? 在这种情况下,建议断言页面 URL,然后验证文本是否按预期出现。您可能希望检查页面上多个属性的可用性。 这可以通过验证每个属性的存在来实现,因为在遇到第一个失败时测试用例不会中止。 这将帮助您同时查看页面的所有失败并采取必要的措施。

示例:

玩的时间到了! 让我们断言 Gmail 页面的标题,并进行文本,后退箭头和超链接验证。

  • 首先,让我们考虑一个全正面的情况。 我们导航到右侧页面,标题为 Gmail,输入电子邮件并单击下一步后,将显示文本“一个帐户。 所有 Google。”,后退箭头和指向“使用其他帐户登录”的超链接。 测试用例成功
  • Assert_Passed
  • 其次 ,让我们尝试断言失败的情况。 我们将打开 Google 页面并断言其标题为“Selenium – Google Search”。 这将导致失败并中止 测试用例,因为当前页面标题将为“Google”。
  • Assert_Failed
  • 最后 ,我们将使验证语句失败,并确保测试用例即使在记录错误并整个测试用例失败之后也能继续执行。 打开 Google 页面,断言其标题为“Google”,验证按钮“Google Search”,验证超链接“Gmail”,其值为“Gmail”,并验证是否存在 Google Apps 图标。
  • 通过将超链接的值更改为“Gmail11”而不是“Gmail”,验证命令将失败 ,但是测试用例将继续执行记录错误。
  • Verify_Failed
  • 当心!您可能会遇到“找不到元素”错误。很奇怪 :即使命令只是一个验证,而我们要验证的元素不在页面上,也不会执行连续的步骤,并且测试用例也会失败。 由于验证通常用于检查文本的存在,并且如果未找到元素本身,则应该在应用中存在需要立即解决的错误。 因此结果。
  • Verify_abort

是时候休息一下了! 练习一些场景并加深断言和验证的知识,迟早会成为 SeleniumVille 中生活的重要组成部分。 在另一个帖子中再见!