Тестирование полной программы путем сравнения выходного файла с эталонным файлом: как он называется и есть ли для него пакет? - PullRequest
3 голосов
/ 15 марта 2012

У меня полностью неинтерактивная программа на Python, которая принимает некоторые параметры командной строки и входные файлы и создает выходные файлы. Его можно довольно легко протестировать, выбрав простые случаи и записав вручную входные и ожидаемые выходные файлы, затем запустив программу для входных файлов и сравнив выходные файлы с ожидаемыми.

1) Как называется этот тип тестирования?

2) Есть ли пакет python для такого тестирования? Это не сложно настроить вручную в самой простой форме, и я уже сделал это. Но затем я столкнулся с такими случаями, как выходные файлы, содержащие дату и другую информацию, которая может законно меняться между прогонами - я подумал о том, чтобы написать что-то, что позволило бы мне указать, какие разделы справочных файлов должны быть разными и при этом пройти тест и понял, что я могу начать «изобретать велосипед». (Я переписал большую часть функциональности unittest, прежде чем поймал себя в прошлый раз, когда это произошло ...)

Ответы [ 2 ]

1 голос
/ 15 марта 2012

Полагаю, вы имеете в виду форму системного тестирования .

Ни один пакет не знает, какие части могут быть законно изменены.Мое предложение состоит в том, чтобы макетировать участки кода, которые приводят к изменениям, чтобы вы могли быть уверены, что выходные данные всегда одинаковы - вы можете использовать такие инструменты, как Mock .Сравнение двух файлов довольно просто, просто выведите каждый файл в строку и сравните строки.

0 голосов
/ 15 марта 2012

Функциональное тестирование. Или регрессионное тестирование, если это его цель. Или покрытие кода, если вы структурируете свои данные, чтобы охватить все пути кода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...