有没有办法从詹金斯发送 arguments/values 到机器人测试用例?

Is there any way to send arguments/values to Robot test cases from jenkins?

我有自动测试,它接受用户的输入并 运行 进行测试。 关于我们是否可以给出 jenkins 对机器人测试用例和 运行 测试的论证,有什么想法吗?

例如: 场景:测试照明设备是否正常工作。 步骤:

  1. ssh 登录灯光设备,
  2. 运行 一些预定义的命令集,
  3. 验证 lighting_flag 设置为 0 或 1,
  4. ssh 从设备注销

在这种情况下, 我需要将轻型设备用户名和密码作为用户输入。 是否可以从 jenkins(带参数构建)和 运行 机器人测试用例中获取它?

您可以使用变量。例如,连接和登录的用户关键字可能是这样的:

Connect To Device   
    [Arguments]    ${HOST}
    Open Connection     ${HOST}
    Login    ${USERNAME}    ${PASSWORD}

现在,如果您的 Jenkins 参数是 usernamepassword,您可以像这样使用执行 shell 任务:

 pybot --variable USERNAME:[username] --variable PASSWORD:[password] <path/to/tests>

这会为测试执行设置全局变量 ${USERNAME} 和 ${PASSWORD}。

user guide 中的更多信息。

从 Jenkins 传递参数。

  1. 转到 Jenkins Job_Name -> 配置,在作业通知区域你可以找到一个名为 "This build is parameterised" 的复选框。
  2. 点击选项中的"Add Parameter" select "string parameter"。
  3. 现在您可以找到名称、默认值、说明(可选)。

姓名:用户名

默认值:user1

对密码重复相同的操作。 在执行 Shell:

导出用户名=$用户名

导出密码=$密码