Имитация ошибок проста (просто вызовите Thread.Abord ()); но это не расскажет вам много о вашем дизайне.
В частности, отладка немного неактуальна, потому что всякий раз, когда ВМ перестает работать, больше нечего наблюдать (больше ничего не нужно отлаживать). Вы должны просто предположить, что ваше приложение может быть внезапно остановлено в любой точке его выполнения.
Поскольку вы не можете реально наблюдать все тонкие искажения данных, которые могут быть вызваны прерванными выполнениями, вам следует подумать о том, чтобы ваш персистентный дизайн с самого начала был устойчив к такой проблеме (идемпотентные процессы очень помогают, когда это возможно). *