Структура для приемочного тестирования с использованием текстовых файлов с регулярными выражениями - PullRequest
0 голосов
/ 05 апреля 2011

Я создал программный пакет, который выдает каталог, полный результатов. Я хотел бы проверить результаты из некоторых стандартных входных файлов. Каталоги должны быть чем-то похожи при каждом запуске, за исключением ограниченного количества изменяющихся вещей: следы текущей даты / времени, UUID для конкретного прогона, номер текущей версии Subversion. Это осложняется тем фактом, что иногда эти переменные вставляются в текстовые файлы, а иногда в их имена. И иногда текстовые файлы были сжаты gzip. Все это усложняет использование diff для сравнения каталогов.

В идеале я хотел бы иметь возможность выполнить один «золотой» прогон приложения, отредактировать выходные файлы, чтобы заменить переменные с каким-то синтаксисом регулярных выражений, и запустить какое-то приложение для сравнения каталогов, принимая вещи, которые соответствуют синтаксис регулярных выражений. Есть ли рамки тестирования, которые могли бы сделать это для меня легко? Лучше всего было бы, если бы он имел интерфейс командной строки, вторым лучшим был бы интерфейс Python. Если нет, то, наверное, я сам попробую что-то свернуть.

Ответы [ 2 ]

0 голосов
/ 06 апреля 2011

Cram получен из тестового формата Mercurial, который в основном работает с транскриптами оболочки, но позволяет использовать регулярные выражения. Это звучит идеально для вашего случая использования. (Он написан на Python с интерфейсом командной строки.)

0 голосов
/ 06 апреля 2011

Похоже, вам стоит взглянуть на TextTest .Я не пользовался им лично, но, исходя из того, что я знаю, он должен вполне соответствовать вашим потребностям.

...