Указанное здесь поведение по умолчанию определенно то, что вам нужно. Вы хотите, чтобы тесты можно было выполнять изолированно. Если вы хотите повторно протестировать область еще раз, потому что она сломана, вам не нужно возвращаться и снова запускать предыдущие тесты, чтобы привести ее в правильное состояние для повторного запуска тестов.
Один неверный тест даст вам лучшее представление о том, в чем заключается неисправность, а не несколько неверных тестов из-за того, что тест, от которого зависят все остальные ваши тесты, был нарушен, что это то, к чему подход, который вы описываете, поддается.
Если вы думаете об этом, скажем, вы занимаетесь разработкой через тестирование. Вы пишете контрольный тест с правильными данными, который создает запись. Другие тесты заключаются в чтении, обновлении, повторном чтении, удалении записи, обновлении другой записи, создании еще одной новой записи и повторном чтении. Удаление завершается неудачно, а тесты создания и чтения завершаются неудачно, потому что вы повторно вставляете один и тот же индекс. Однако тесты не скажут вам, что вы просто получите 4 неработающих теста, и вам придется проверить все ваши тесты, которые не работают, и какой из них вызвал поломку других тестов, если это действительно так. Вы не узнаете.
Если вы сделаете то, что говорит вам поведение по умолчанию, у вас будет только один неработающий тест, и вы решите проблему. Мертво легко. Вы просто добавляете в базу данных по мере возникновения тестовых случаев, чтобы приспособиться к ним.
Если вы хотите проверить, что находится в базе данных, вы можете сделать это, дважды запросив один и тот же тест. Выполните запрос на обновление, затем запустите запрос на выбор того, что вы только что сделали, и сделайте и приравняйте как другое утверждение. Вы можете быть уверены, что база данных выполнила ваш запрос, если вы правильно настроили ее и не получили ошибок, но вы лучше знаете свое приложение. Например, у вас запущены триггеры.
Я считаю, что вы можете остановить поведение с помощью такого рода вещей в конфигурации, но это не то, что вы хотите!:
class_name: FunctionalTester
modules:
enabled: [Filesystem, FunctionalHelper, Laravel4, Asserts]
config:
Laravel4:
environment: 'testing'
cleanup: false
person
Paul Stanley
schedule
30.05.2016