Я разрабатываю утилиту командной строки, которая имеет МНОГО флагов. Типичная команда выглядит следующим образом:
mycommand --foo=A --bar=B --jar=C --gnar=D --binks=E
В большинстве случаев печатается сообщение «Успех», но я все же хочу проверить данные по другим источникам, например, внешней базе данных, чтобы гарантировать фактический успех.
Я начинаю создавать тесты интеграции и я не уверен, как это лучше сделать. Меня больше всего беспокоит следующее:
Мысль о том, чтобы вручную записывать отдельные случаи и проверять результаты в формате, подобном модульному тесту, устрашает.
Кто-нибудь знает шаблон, который можно использовать для автоматизации этого типа тестов? Возможно, даже программное обеспечение, которое пытается решить эту проблему? Как люди, работающие над инструментами командной строки GNU, тестировали свое программное обеспечение?