REG:机器人框架中的用户身份验证失败

时间:2020-11-06 09:17:28

标签: robotframework robotframework-sshlibrary

我想使用SSHLibrary连接远程服务器。

*** Settings ***
Library  SSHLibrary

*** Test Cases ***
Connection
    ${RemoteServer}=    openconnection    127.0.0.1    port=2123
    login    127.0.0.1    gfi    
    ${username}=    Executecommand    pwd

但是由于身份验证失败,我收到了错误消息

TRACE : Arguments: [ '127.0.0.1' | port=2123 ]
TRACE : Return: 1
INFO  : ${RemoteServer} = 1
TRACE : Arguments: [ '127.0.0.1' | 'gfi' | delay='0.5 seconds' ]
INFO  : Logging into '127.0.0.1:2123' as '127.0.0.1'.
DEBUG : Adding ssh-ed25519 host key for [127.0.0.1]:2123: 56cde5c5d3a8494218b68ed41b4e837d
FAIL  : Authentication failed for user '127.0.0.1'.
DEBUG : 
Traceback (most recent call last):
  File "c:\python27\lib\site-packages\SSHLibrary\library.py", line 914, in login
    is_truthy(look_for_keys), delay, proxy_cmd)
  File "c:\python27\lib\site-packages\SSHLibrary\library.py", line 973, in _login
    raise RuntimeError(e)
Ending test:   Launchvm.Launchvm.Connection

这是我第一次使用SSHLibrary。使用SSHLibrary是否需要任何先决条件。 有人可以帮忙解决身份验证失败的问题。

1 个答案:

答案 0 :(得分:0)

您必须查看SSHLibrary - Login关键字的参数。
如文档Login所示,第一个参数是username
但是,在您的代码中,您将127.0.0.1作为用户名。
login 127.0.0.1 gfi
我认为这不是用户名。

您还可以在日志消息中看到该消息,它尝试以127.0.0.1的身份登录127.0.0.1:2123。
INFO : Logging into '127.0.0.1:2123' as '127.0.0.1'.

如果您按预期更新代码并使用用户名和密码调用登录关键字,它应该可以正常运行。
login <username> <password>