Вам могут помочь два подхода, с проблемой, которую вы описываете как ответ на AutomatedTester:
Первый , NUnit 2.4.4 определяет SuiteAttribute , который позволяет вамзапускать тесты в нужном вам порядке.Очень удобно, но имеет серьезные ограничения: оно не совместимо с TestCaseAttribute .Это означает, что все ваши тесты должны запускаться только с помощью TestAttribute ;что очень раздражает, если вы нацелены на охват основанных на значениях граничных тестов (таким образом, несколько тестовых примеров, управляемых данными).Более подробная информация о http://www.nunit.org/index.php?p=suite&r=2.5.10
Другой подход - это подготовка базы данных интеграции, созданной специально для ваших тестовых случаев.Допустим, у вас есть 15-ступенчатый процесс регистрации: создайте запись о студенте и подтолкните ее к первому шагу, затем к другому студенту и продвиньте ее до второго шага и так далее.Сохраните вашу базу данных и восстановите ее как настройку тестового устройства.Затем протестируйте каждый шаг с другим учеником.
В большинстве случаев совершенно правильно проводить интеграционные тесты для разных записей для каждого шага, поскольку он обеспечивает одинаковое функциональное и кодовое покрытие и следует идее интеграциитестирование, потому что ваши записи в БД являются настоящими записями (созданными пользовательским интерфейсом со всеми недостатками, которые идут с пользовательским интерфейсом).
Конечно, требуется больше времени для запуска и места для хранения, потому что копии БД вам придется хранить.Если ваша система не может себе этого позволить, то, возможно, вы захотите взглянуть на первое решение.
Это также дает вам возможность обнаруживать ошибки на более поздних этапах, даже если предыдущие этапы нестабильны:все тесты выполняются в каждой тестовой кампании, что не относится к запрашиваемому вами решению.