Якість програмного забезпечення
Якість програмного забезпечення
Telnet Scripting Tool: автоматизація telnet-сесій
Як зазначалося раніше, для автоматизації інтерактивного спілкування із системою можна використовувати інструменти сімейства Expect (раз, два). Нижче представлена ще одна корисна утиліта, що дозволяє з Windows-машини керувати telnet-сесією до віддаленої системи за протоколом telnet. Приклад такої системи HP iLO. За замовчуванням, в ній відкрито лише telnet-доступ, а можливість користуватися ssh купується за окрему плату. Інший приклад: продукти Cisco також дозволяють звертатися до себе по telnet, незважаючи на очевидну незахищеність такого з'єднання.
Отже, утиліта називається Telnet Scripting Tool 1.0 (tst10.exe) і лежить тут. Вона не єдина свого роду, але досить зручна в інтеграції з іншими інструментами.
Ось її опис, що видається під час запуску без параметрів:
Розглянемо таке завдання: для цілей автотестування нам потрібно виконувати послідовність команд на віддаленій системі (скажімо, HP iLo). Послідовність команд може бути різною. Параметри команд також можуть бути різними. Наприклад, нам потрібно додавати та видаляти користувача в тій чи іншій системі та аналізувати успішність операції.
Підготуємо шаблони для сесій додавання та видалення користувача.
Параметри в шаблонах будуть замінюватися на необхідні значення, що отримуються з командного рядка під час запуску наступного скрипта (telnetsession.js):
Цей сценарій використовується для запуску tst10.exe. У лозі telnet_session.log буде наступне:
Питання у студію: чи існують подібні інструменти для організації ssh-сесій? Щось на зразок plink, але з інтерактивністю як у tst10.exe?
Коментарі (6)
виведення команд виконуваних на віддаленій машині можна перенаправляти у файли, а на дозвіллі аналізувати
Ні, plink це не зовсім те, що потрібно. Не вистачає інтерактивності - тієї, що присутня в описаному вище tst10.exe (очікуєш певний рядок, посилаєш відповідь, знову чекаєш і т.д. - і все це в рамках однієї сесії).
Звичайно, таким чином можна спробувати запускати скрипт Expect, але хочеться зручніше рішення.
ще начебто можна спробувати використовувати pseudo-terminals http://rachid.koucha.free.fr/tech_corner/pty_pdip.html
http://www.opensourcetesting.org/functional.php Expect Description: Expect is Unix automation and testing tool, для автоматизації interactive applications, як telnet, ftp, passwd, fsck, rlogin, ssh, tip, etc. І з посиланням на Tk, ви можете також завантажувати interactive applications в X11 GUIs. Requirement: Windows / UNIX Download data: No data feed available
Nicholas,
Так, Expect та його клони – відома тема. Колись я про це вже писав:
Про псевдотермінали почитаю, дякую.
Також можна використовувати пакетний клієнт telnet http://helpform.ru/s0001
Kolosov, дякую!
КОРОТКИЙ ЗМІСТ
Що таке якість програмного забезпечення та як його покращити: теорія та практика, завдання та рішення, підводні камені та обхідні шляхи.