首页 > 解决方案 > 使用 Robot 与远程主机并行 SSH 连接

问题描述

我有一个简单的测试,使用SSHLibrary我想在多个主机上并行启动和运行的测试。现在我已经静态设置了'host1'。如何同时在 host1、host2 和 host3 上运行它?

*** Settings ***
Documentation          Demo
Library                SSHLibrary
Suite Setup            Open Connection And Log In
Suite Teardown         Close All Connections

*** Variables ***
${HOST}                host1
${USERNAME}            user

*** Test Cases ***
Evaluate command status
    [Documentation]    Demo
    ${output}     Execute Command     net show version  
    Should Be True    $output

*** Keywords ***
Open Connection And Log In
   Open Connection          ${HOST}
   Login With Public Key    ${USERNAME}    /home/user/.ssh/id_rsa

标签: robotframework

解决方案


--variable您可以使用or-V选项在命令行上设置变量:

robot --variable host:host1
robot --variable host:host2

有关更多信息,请参阅机器人框架用户指南中的在命令行中设置变量。

机器人本身不提供任何功能来并行运行测试。要并行运行它们,您可以编写一个脚本,在每个主机的后台运行机器人,然后将每次运行的报告组合成一个统一的报告。


推荐阅读