Как выполнить модульное тестирование тайм-аута транзакции в MySql? - PullRequest
2 голосов
/ 24 марта 2011

Я пишу модульный тест, чтобы воспроизвести сценарий, в котором достигается тайм-аут при вызове Commit для MySqlTransaction (с использованием C # и MySql Connector / Net), но я просто не нахожу способ заставить этот вид тайм-аута,Все мои тесты будут вызывать задержки только при выполнении вызова ExecuteNonQuery для команды, но никаких задержек никогда не произойдет, когда она попадет в transacion.Commit ().

Есть ли способ принудительно установить тайм-аут для коммита?

1 Ответ

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

Вам известно, что вы пишете интеграционный тест, если вы пытаетесь заставить сервер вызвать исключение?

Если вы хотите провести UNIT TEST, вы должны заглушить и смутить всю связь с внешним миром -- также вы MySqlServer.Если вы сделаете это, вы получите бонус за возможность увеличить тайм-ауты и другие исключения по желанию.Кроме того, вы устраните риск изменения / разрушения целостности данных в вашей базе данных юнит-тестами.

...