Нет проблем с выполнением многопоточного кода в модульных тестах, и я запустил в них все виды кода диспетчеризации.
Когда вы говорите, что пошагово прошёл код, вы имеете в виду, что вы буквально пошагово прошли через отладчик. Если это так, и вы предполагали, что код не запустился, потому что отладчик не остановился в блоке, вы должны помнить, что он будет выполняться в другом потоке, и вам потребуется точка останова, чтобы остановить его.
Так что я бы назначил точки останова в блоке.
Во-вторых, если вы тестируете код, запущенный из основного потока, это не будет работать, потому что вы не можете асинхронно выполнить некоторый код в том же потоке, в котором вы находитесь. Код модульного теста должен выполняться в фоновом потоке.
Тогда возникает проблема времени выполнения. Поскольку вы запускаете асинхронный блок, возможно, он еще не выполнен.
Проверка асинхронных вызовов означает, что, вероятно, ваш код, приведенный выше, должен будет дождаться завершения асинхронного вызова, прежде чем он сможет подтвердить все, что он мог сделать. В этом случае вы должны учитывать, что это должна быть синхронизация, а не асинхронность.
Вам нужно показать больше кода, я думаю: -)