Подскажите инструменты автоматизации интеграционного тестирования для приложений с CLI?

autoit
tools
webdriver
tdd
qtp
integration
cli
Теги: #<Tag:0x00007fedbc654698> #<Tag:0x00007fedbc6544e0> #<Tag:0x00007fedbc6542b0> #<Tag:0x00007fedbc6545d0> #<Tag:0x00007fedbc65be20> #<Tag:0x00007fedbc65bc90> #<Tag:0x00007fedbc65ba38>

(Oleksandr Molodetskyi) #1

Написал небольшое приложение на java, которое вычисляет темп бега исходя из времени и дистанции и наоборот. Пока сделал весь интерфейс общения с пользователем через командную строку. Юнит-тестами хорошо покрыл, так как делал через TDD, а вот интеграционных автоматизированных тестов нет. Имею опыт автоматизации Selenium+Webdriver - но это для веб приложений только, а для десктопных - QTP и Autoit. В принципе на Autoit можно исхитриться и написать тесты для командной строки, но может кто-то подскажет что-то более удобное для этого? Желательно бесплатный инструмент.


(Yury) #2

Jemmi
http://wiki.netbeans.org/Jemmy

Jubula


(Oleksandr Molodetskyi) #3

спасибо, посмотрю. Но пока из описания вычитал, что оба предназначены для тестирования GUI, а у меня интерфейс командной строки.


(ex3me0) #4

А какие конкретно кейсы надо покрывать?
Просто если что-то вроде: запустить бинарь с опцией --help и проверить аутпут - это одно, а если непрерывно считывать аутпут рабочего приложения - совсем другое.
Приведите пару примеров кейсов, в т.ч. и самых сложных; это поможет дать какие-то более конкретные рекомендации


(Oleksandr Molodetskyi) #5

У меня простое приложение:
для юзера выводится сообщение

************* Welcome to Pace Calculator! *************
Please select what you would like to do:
* If you would like to calculate pace based on time and distance enter 1;
* If you would like to time based on pace and distance enter 2;
* If you would like to distance based on time and pace enter 3;
* If you would like to exit enter 0;

Enter your choice here:

Case 1: Positive pace calculation:

  1. Type 1 and press Enter
    Expected Result:
You selected to calculate pace.
Please enter time you are going to run in following format hh:mm:ss:
  1. Type 03:30:00 and press Enter
    Expected Result:
Please enter distance you are going to run in integer meters:
  1. Type 42195 and press Enter
    Expected Result:
Calculated! Based on your input pace should be 04:58
Continue to work with Pace Calculator? Please type yes or no

Case 2: Negative:

  1. Type абрвлг and press Enter
    Expected Result:
You entered a wrong value!
************* Welcome to Pace Calculator! *************
Please select what you would like to do:
* If you would like to calculate pace based on time and distance enter 1;
* If you would like to time based on pace and distance enter 2;
* If you would like to distance based on time and pace enter 3;
* If you would like to exit enter 0;

Enter your choice here:

(Oleksandr Molodetskyi) #6

вот ссылка на Гитхаб, если интересно поиграться https://github.com/omolodetskyi/Pace-Calculator
Первый релиз - CLI версия
Второй релиз - cделал GUI, но можно запускать и с интерфейсом командной строки, если запускать с параметром -cli