Robotframework Robot SSHLibrary将ssh连接传递到我的库类

Robotframework Robot SSHLibrary将ssh连接传递到我的库类,robotframework,robotframework-sshlibrary,Robotframework,Robotframework Sshlibrary,目前我使用SSHLibrary在测试套件文件或关键字文件中执行ssh命令。在我当前的库文件中可以这样做吗?这意味着我的库函数现在只形成字符串。我想在库文件中的ssh连接中执行它 test/testsuit.robot *** Settings *** Library SSHLibrary Library ${EXEC_DIR}/lib/mylib.py WITH NAME llib Suite Setup open_connection_and_log

目前我使用SSHLibrary在测试套件文件或关键字文件中执行ssh命令。在我当前的库文件中可以这样做吗?这意味着我的库函数现在只形成字符串。我想在库文件中的ssh连接中执行它

test/testsuit.robot

*** Settings ***
Library         SSHLibrary
Library         ${EXEC_DIR}/lib/mylib.py  WITH NAME  llib
Suite Setup     open_connection_and_login
Suite Teardown  Close All Connections

*** Variables ***
${HOST}      10.x.x.x.x
${USERNAME}  myuser
${PASSWORD}  mypassword

*** Test Cases ***
example test
    ${sshstring}= llib.form_the_sshstring   ls
    ${output}=  Execute Command     {sshstring}

*** Keywords ***
open_connection_and_login
    Open Connection  ${HOST}
    Login  ${USERNAME}  ${PASSWORD}
lib/mylib.py

def form_the_sshstring(input):
    sshstring = "{}".format(ls)
    return sshstring
import SSHLibrary
    def run_the_sshstring(input):
        sshstring = "{}".format(ls)
        out = SSHLibrary.SSHCleint(sshstring)
        return out
期待着像

*** Test Cases ***
example test
    ${output}= llib.run_the_sshstring   ls
/lib/mylib.py

def form_the_sshstring(input):
    sshstring = "{}".format(ls)
    return sshstring
import SSHLibrary
    def run_the_sshstring(input):
        sshstring = "{}".format(ls)
        out = SSHLibrary.SSHCleint(sshstring)
        return out

在库文件中,您可以通过内置关键字获得对导入的SSHLibrary的引用——因此,它是关键字。这样,就可以调用SSHLibrary关键字

例子:
我不太明白你的问题。有什么区别?你想得到什么?您提供的代码是否不能按预期工作?您是救世主,谢谢!还有一个问题,是否可以获取活动的sshClient或将客户端传递到my custom library.py?因为如果我使用get_library_实例,它会给libdoc带来麻烦。@WoodChopper:可能吧。我还没试过。您可以从测试中调用
get\u library\u instance
,并将结果传递给关键字。