Что было бы правильной вещью для каждого случая?Правильная модульная проверка Философия
1: Контекст: Тестирование функции, которая создает базу данных, а также создание метаданных для этой базы данных
Вопрос: Обычно случаи модульного тестирования должны быть независимыми, но если мы хотим, чтобы убедиться, что функция поднимает исключение при попытке создать дублируемую базу данных, было бы приемлемо иметь упорядоченные тестовые примеры, когда первая проверяет, работает ли эта функция, а вторая проверяет, не сработает ли она при ее повторном вызове?
2: Для большинства других функций требуется база данных и метаданные. Было бы лучше назвать предыдущие функции в настройке каждого набора тестов для создания базы данных и метаданных, или было бы лучше жестко запрограммировать требуемую информацию в базе данных?
Удостоверенные тесты хороши, если ваше тестовое исполнение основано на скорости и объеме. Например, сначала выполните единичные тесты, а затем, если все проходит, выполните тесты интеграции. –
Это не то же самое «упорядоченное», о чем спрашивает ОП. В этом случае упорядоченное означает «выполнить этот модульный тест до этого».Разделение модульных тестов и интеграционных тестов (или аналогичная категория на основе скорости) является прекрасным и часто полезным, но порядок выполнения тестов в каждой из этих групп не должен иметь значения – dkatzel
Из любопытства, почему заказные тесты по своей сути хуже, чем указано выше решение использовать один тест для повторного запуска другого теста? –