如果页面元素中包含单词“error”,则停止测试用例

问题描述 投票:0回答:1

在我的一个测试用例中,有一个从 1% 到 100% 的过程。 但是,有时该过程会在 1% 或 4% 时失败并显示错误。

我想在此测试用例中添加一段代码,如果页面上显示错误,则停止/失败测试用例。

实现这一点的最佳方法是什么?

我还没有弄清楚这一点。

selenium-webdriver robotframework
1个回答
0
投票

例如,您可以使用 while 循环。

  1. 您的代码在无限循环中等待事件,直到满足条件之一:错误、成功或超时。 另外,有必要了解哪些网络元素可以表明成功。使用一行伪代码,它可能看起来像:
    WHILE    True    limit=100 seconds
        ${error_elements} =  get webelements  //*[contains(text(), 'error')]
        IF  $error_elements  Fail  "Process failed"

        ${success_elements} =  get webelements <your locator>
        IF  $success_elements  BREAK
        sleep  0.1 seconds
    END

哪里,

  • Fail
    是导致测试用例失败的内置关键字。
  • get webelements
    - 来自 SeleniumLibrary 的关键字
  • limit=100 seconds
    是一个有意义的可选超时。如果您确定您的进程不会挂起,您可以删除该限制。
  • sleep  0.1
    - 任何合理的延误。可选。
© www.soinside.com 2019 - 2024. All rights reserved.