robotframework 接続先 切り替え

robotframework
本ページはプロモーションが含まれています

はじめに

複数のNW機器にログインして、機器の接続状態を確認する必要がありました。

例としては、
装置Aにログイン
装置Bにログイン
装置Aから装置Bのデバイスの状態を表示
装置Bから装置Aのデバイスの状態を表示
装置Aの設定を変更
装置Bから装置Aのデバイスの状態を表示
装置Aのログアウト
装置Bのログアウト

という様な具合です。
ネットワーク機器はこうした設定の確認をする事が多いです。

そこでRobotframeworkで装置の切り替えが出来れば、作業の自動化ができるなと思いTelnetやSSHで接続した機器の切り替えが出来ないかを調べた時のメモです。

サンプルソースコード

サンプルコードは装置R1にSSHで接続した後に装置R2へもSSHで接続。
(両方ともCiscoの機器とします)
その後、装置R1に切り替えてルーティング状態を表示し、装置R2へ再度切り替えして同じくルーティングを表示するというものです。

切り替えには『Switch Connection』を使用します。
SSHLibraryをインポートする必要があります。

*** Settings ***
Library SSHLibrary
Library OperatingSystem

*** Variables ***
${R1_user_name}    R1
${R1_pass}         cisco
${R2_user_name}    R2
${R2_pass}         cisco
${R1_ip}           192\.168\.1\.10
${R2_ip}           192\.168\.2\.20

*** Test Cases ***
Switch Connectionテスト
    ${R1}=         Open Connection        ${R1_ip}
    Login          ${R1_user_name}        ${R1_pass}
    ${R2}=         Open Connection        ${R2_ip}
    Login          ${R2_user_name}        ${R2_pass}
    
    # R1へ装置の切り替え
    Switch Connection    ${R1}
    Write terminal length 0
    Write show ip route
    ${output}= Read delay=3s
    Log To Console ${\n}${output}
    
    # R2へ装置の切り替え
    Switch Connection    ${R2}
    Write terminal length 0
    Write show ip route
    ${output}= Read delay=3s
    Log To Console ${\n}${output}

Open Connectionoの情報を${R1}と${R2}で受け取り、切り替えを行いたい時にSwitch Connectionに引数として渡します。

そうすることで複数の接続先で装置の切り替えが行えます。

さいごに

サンプルはシンプルな例ですが、これを元に必要な処理があれば追加していく事で、ある程度のことは出来ると思います。
装置もCiscoの装置以外の機器でも可能です(LinuxとかでもSSHで入れば切り替えが出来ます)

まとめると、
ということで、装置を切り替えるには『Switch Connection』を使う
という事でした。

この記事がお役に立ったのならば嬉しいです。
最後までお読みいただきありがとうございました。

Ads Blocker Image Powered by Code Help Pro

Ads Blocker Detected!!!

We have detected that you are using extensions to block ads. Please support us by disabling these ads blocker.

タイトルとURLをコピーしました