2010-01-29 3 views
2

Я только что закончил раздел кодирования простого назначения домашней работы для моего класса C++. Вторая часть задания требует подтверждения проверки ввода кода. (Программа принимает несколько разных значений в качестве входов от пользователя и печатает эти значения в файл)Взаимодействие с программой и тестирование через скрипт bash

Я надеялся, что для этого могу использовать скрипт bash. Есть ли способ использовать скрипт bash для запуска и взаимодействия с программой? Как я могу поместить вывод программы в переменную (обратите внимание, что в программе есть серия входных запросов и выходов).

Благодаря

+0

Взгляните на tush: http://darius.livejournal.com/42878.html –

ответ

3

Чтобы построить на ответ @Travis', создать два файла: один держит ваши входы (input.txt) и один имеет ожидаемый выход (expected_output.txt). Затем выполните следующие действия:

./myprogram <input.txt >output.txt 
diff output.txt expected_output.txt 

Если команда diff имеет какой-либо вывод, что есть проблема.

+0

Это отличная идея! –

+0

Если вы используете 'diff -u' для генерации разности, результат может быть более читаемым. – ndim

0

Вы можете сделать большую часть этого с помощью сценария оболочки, но вы можете захотеть использовать другие инструменты тестирования, а не CppUnit или expect.

Смежные вопросы