【问题标题】:How to reference yaml variable file present in github in robot framework test case file in github如何在 github 的机器人框架测试用例文件中引用 github 中存在的 yaml 变量文件
【发布时间】:2020-11-27 12:50:01
【问题描述】:

我通过 azure 管道运行了 Robot 框架测试用例(存在于 github 中)。测试用例执行得很好。接下来我修改了机器人框架测试用例文件以导入 yaml 变量文件(变量 yaml 文件也存在于同一个 github repo 文件夹中),其中包含测试用例文件使用的变量。 yaml 变量文件是这样的

login:
 url: xxx.com
 email: abc@y.com 
 password: xyz

我的测试用例文件看起来像这样

*** Settings ***
    Library           SeleniumLibrary
    Variables         variablesfile.yaml
  
  *** Test Cases ***
  Dev_TC01_AddProcess
  Open Browser    ${login.url}    chrome
  Input Text    id=email    ${login.email}
  Input Password    id=password    ${login.password}

我用来触发测试场景的 yaml 管道看起来像这样

- script: |
    pip install pytest pytest-azurepipelines
    pytest
    robot --pythonpath . -x outputxunit.xml TestScenarios.robot
  displayName: 'Run Robot Scripts'

但在运行管道时出现错误,因为测试场景文件无法引用 variablesfile.yaml。收到错误消息 - 解析变量“${login.url}”失败:

能否请您建议如何引用变量文件

【问题讨论】:

  • 你能发布整个错误吗?

标签: azure-devops robotframework azure-pipelines-build-task


【解决方案1】:

上述错误似乎是由于找不到变量yaml文件引起的。

如果您在Settings 部分中定义了Variables file,就像您在上面示例中定义的那样。您应该将变量yaml文件放在测试机器人文件TestScenarios.robot的同一目录中。

如果变量文件不在同一目录下。您可以在Settings 部分中定义正确的相对路径,如下例所示:参见here

Variables ../data/variables.yaml

Note:

在 Robot Framework 中使用 YAML 文件需要安装 PyYAML 模块。如果你已经安装了 pip_,你可以通过运行 pip install pyyaml 来安装它。

【讨论】:

  • 变量文件在TestScenarios.robot的同一目录下。我也尝试输入完整路径,但它没有工作。最后我得到了一个解决方案,我需要运行 pip install pyyaml script 然后它才能工作
  • @Komz,我猜你已经安装了 pyyaml。您将在错误消息中获得Using YAML variable files requires PyYAML module to be installed。如果没有安装pyyaml
【解决方案2】:

Variables 文件与 TestScenarios.robot 位于同一目录中。我也尝试输入完整路径,但它仍然不起作用。最后我得到了一个解决方案,我需要运行 pip install pyyaml script 然后它才能工作

【讨论】:

    猜你喜欢
    • 2013-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-09-23
    • 2021-10-13
    • 2018-01-23
    • 2018-06-27
    • 2017-07-14
    相关资源
    最近更新 更多