Использование Robot Framework для сканирования открытых портов на локальном хосте

Я использую Robot Framework для тестирования сетевых проблем и серверов. Я в среде Windows.

Прямо сейчас мне нужно проверить, доступна ли определенная служба на локальном хосте на определенном порту. Я мог бы использовать netstat вместе с библиотекой процессов, чтобы выяснить, запущена ли нужная служба на назначенном порту, но это кажется немного неуклюжим.

Какая библиотека Robot Framework лучше всего подходит для получения нужной информации?


person Aleph0    schedule 26.05.2020    source источник


Ответы (1)


Это можно сделать с помощью платформы роботов SSHLibrary (http://robotframework.org/SSHLibrary/SSHLibrary.html)

В приведенном ниже примере показано, как создать ssh-туннель для порта 8082 на хосте 192.168.10.10 и сопоставить порт 8082 с 8083 на локальном компьютере.

*** Settings ***
Documentation          This example demonstrates executing a command on a remote machine
...                    and getting its output.
...
...                    Notice how connections are handled as part of the suite setup and
...                    teardown. This saves some time when executing several test cases.

Library                SSHLibrary
Suite Setup            Open Connection And Log In
Suite Teardown         Close All Connections

*** Variables ***
${HOST}                192.168.10.10
${USERNAME}            username
${PASSWORD}            Password

*** Test Cases ***
Execute Command And Verify Output
    [Documentation]    Execute Command can be used to run commands on the remote machine.
    ...                The keyword returns the standard output by default.
    ${output}=         Execute Command    echo Hello SSHLibrary!
    Should Be Equal    ${output}          Hello SSHLibrary!

*** Keywords ***
Open Connection And Log In
   Open Connection     ${HOST}
   Login               ${USERNAME}        ${PASSWORD}
   create local ssh tunnel  8083  ${HOST}  8082  #source_port  host_ip  destination_port

person Prabodha    schedule 02.02.2021