【问题标题】:Can you check multiple URLs in robotframework simulatenously?您可以同时检查机器人框架中的多个 URL 吗?
【发布时间】:2016-05-09 09:11:13
【问题描述】:

我正在编辑我原来的问题,希望这表明我做了更多的研究

我想我找到了一种方法,但是,我遇到了一些问题,我发现我可以使用for loop 来遍历网址列表,我的问题是,对于任何以下步骤,例如capture page screenshotpress key 等我在哪里应用这些?它们是否也嵌套在循环中?

我看到另一个 stackoverflow 帖子,它给了我这个想法:

*** Variables ***
@{HOMEPAGES}     http://example.one    http://example.two   http://example.three
${BROWSER}      ff

*** Test Cases ***
test with several links
    :FOR    ${homepage}     IN      @{HOMEPAGES}
    \   open browser     ${homepage}
    \   capture page screenshot     ${homepage}

上面的示例给了我一个 PASS,但我想知道如果我想将这些操作应用于 @{HOMEPAGES} 数组,是否必须将每个操作都放在 for loop 中?

【问题讨论】:

  • 是的,这是可能的。试试看,如果你遇到困难,你可以回来问一个更具体的问题。
  • 谢谢。只是学习框架。我一定会试一试的。
  • 刚刚使用我执行和验证的示例编辑了我的问题。还添加了一个特定的问题。谢谢。

标签: python selenium automation robotframework


【解决方案1】:

有两种或多或少的标准方式来处理您的任务。 您可以使用data-driven test:

*** Settings ***
Test Template     Make Screenshots

*** Test Cases ***    Web Page
Page one              http://example.one
Page two              http://example.two
Page three            http://example.three

*** Keywords ***
Make Screenshots
  [Arguments]  ${homepage}
  Open Browser     ${homepage}    ff
  Capture Page Screenshot

或者简单地使用自定义关键字对所需操作进行分组:

*** Variables ***
@{HOMEPAGES}     http://example.one    http://example.two    http://example.three
${BROWSER}      ff

*** Test Cases ***
test with several links
    :FOR    ${homepage}     IN      @{HOMEPAGES}
    \   Make Screenshots  ${homepage}

*** Keywords ***
Make Screenshots
  [Arguments]  ${homepage}
  Open Browser     ${homepage}    ${BROWSER}
  Capture Page Screenshot

就我个人而言,我会使用数据驱动的测试,因为它更优雅且更易于扩展。

【讨论】:

  • 谢谢,这很有帮助。我对这两个示例进行了测试,它们都按预期工作。我想这最终归结为偏好,认为数据驱动确实像你所说的那样优雅得多。我将继续阅读框架的文档。
猜你喜欢
  • 1970-01-01
  • 2017-09-13
  • 2021-01-17
  • 2018-04-25
  • 2017-05-27
  • 1970-01-01
  • 2020-12-15
  • 1970-01-01
  • 2021-06-22
相关资源
最近更新 更多