Тестирование Command-Line приложений: средства

На проекте встал вопрос — чем тестировать Command-Line приложение?
Кто что может порекомендовать? Какой набор скриптовых языков/тулов наиболее оптимален для такого рода задач?

Хотел было использовать expect, но призадумался...

Підписуйтеся на Telegram-канал «DOU #tech», щоб не пропустити нові технічні статті

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Рассмотрите использование aruba/cucumber

thechangelog.com/...he-command-line

github.com/...khellesoy/aruba

Вот довольно подробный пример использования — blog.jcoglan.com/...-with-cucumber/

Спасибо, интересно! Теперь хоть понятно в каком направлении двигаться :)

От чего хочу предостеречь — не старайтесь изобретать велосипеды. По крайней мере, до того, как изучите возможности использования существующих решений :)

спорно, наверно, но
имхо — это ручки, а сверху голова мотовированного студента.
постепенно и незаметно созреет в программера,

надо только вовремя з\п синхронизировать с уровнем, тогда не убежит.

Ой, да, забыл добавить — это интерактивное (!) command-line приложение.Понятно, что можно взять perl-php-python-expect... Но интересует реальный опыт. Может кому-то попадалось какое-то изящное решение.

Помещать в буфер клавиатуры нажатые алфавитно-цифровые символы тоже можно делать через оператор перенаправления, повернутым на 180 градусов — ЗНАК_МЕНЬШЕ

Например, есть файл Y в котором — Y(с возвратом каретки \ переносом строки).

Вызов format.exe c: ЗНАК_МЕНЬШЕ Y форматнет схожу жесткий диск :)

Реальный опыт — expect. Не надо велосипедов. Но только под *nix. Под винду реального опыта нет, т.е. может будет нормально, может нет — хз

Если не использовать отладочные классы (под .net framework) — можно посоветовать протоколировать в файл весь консольный вывод. И сделать cmd файл, в котором будет несколько запусков приложения, со всеми возможными аргументами командной строки. Система сама запишет консольный вывод, если использовать оператор перенаправления > имя_файла

Например, test.cmd
myapp.exe -key1 -key2 >result1.txt

myapp.exe -key3 -key4 >result2.txt

Должно создать 2 файла, с консольным выводом.

Підписатись на коментарі