Robot SSHLibrary 将 ssh 连接传递到我的图书馆 class
Robot SSHLibrary pass ssh connection to my library class
目前我使用 SSHLibrary 在测试套件文件或关键字文件中执行 ssh 命令。是否可以在我当前的库文件中执行此操作?这意味着我的库函数现在只是形成字符串。我想在库文件中的 ssh 连接中执行它。
test/testsuit.机器人
*** 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
期待类似..
*** Test Cases ***
example test
${output}= llib.run_the_sshstring ls
/lib/mylib.py
import SSHLibrary
def run_the_sshstring(input):
sshstring = "{}".format(ls)
out = SSHLibrary.SSHCleint(sshstring)
return out
从您的库文件中,您可以获得对导入的 SSHLibrary 的引用——因此,它是关键字——使用 built-in 关键字 Get Library Instance. With that, you can call the SSHLibrary keyword Execute Command
示例:
# mylib.py
from robot.libraries.BuiltIn import BuiltIn
def run_the_sshstring(input):
sshlib = BuiltIn().get_library_instance("SSHLibrary")
result = sshlib.execute_command(input)
return result
目前我使用 SSHLibrary 在测试套件文件或关键字文件中执行 ssh 命令。是否可以在我当前的库文件中执行此操作?这意味着我的库函数现在只是形成字符串。我想在库文件中的 ssh 连接中执行它。
test/testsuit.机器人
*** 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
期待类似..
*** Test Cases ***
example test
${output}= llib.run_the_sshstring ls
/lib/mylib.py
import SSHLibrary
def run_the_sshstring(input):
sshstring = "{}".format(ls)
out = SSHLibrary.SSHCleint(sshstring)
return out
从您的库文件中,您可以获得对导入的 SSHLibrary 的引用——因此,它是关键字——使用 built-in 关键字 Get Library Instance. With that, you can call the SSHLibrary keyword Execute Command
示例:
# mylib.py
from robot.libraries.BuiltIn import BuiltIn
def run_the_sshstring(input):
sshlib = BuiltIn().get_library_instance("SSHLibrary")
result = sshlib.execute_command(input)
return result