はじめに
robotframeworkでsshで装置に接続しようとした際にログインに失敗した事がありました。
接続先装置はCiscoのルータです。
エラーメッセージ
表示されたメッセージは以下のものです。
(IPは適宜自身の環境に置き換えてください)
NoValidConnectionsError: [Errno None] Unable to connect to port 22 on 192.168.1.20
エラーのメッセージは、
『無効な接続エラー:192.168.1.20のポート20に接続する事が出来なかった』
と言っています。
エラーのメッセージからするに、接続拒否が行われているっぽいです。
原因
今回は理由がとても単純でした。
接続した機器のSSHの設定がうまくいっていなかったからです。
Ciscoの装置の場合は
- configure terminalで設定モードへ移行
- ユーザ名とパスワードを設定
- line vtyでローカル認証の設定
を行う必要があります。
(詳細は各機器ごとのコマンドなどを確認してください)
僕の環境ではこれでSSHへログインする事が出来ました。
このエラーが表示されたら、まず対象の機器のSSH設定を確認してみてください。
さいごに
今回はrobotframeworkでのSSHでの接続エラーについてでした。
ネットワーク系も最近テストの自動化が進んできているのでこうしたエラーに出くわす可能性があるかもしれませんね。
この記事がお役に立ったのならば嬉しいです。
最後までお読みいただきありがとうございました。