В тесте вы можете указать атрибут 'requireSTA', который будет запускать его в том же потоке, что и пользовательский интерфейс NUnit.
Я обнаружил это, пытаясь написать тест для сообщения TIBCO Rendezvous. Слушатель должен быть настроен в основном потоке пользовательского интерфейса (виноват TIBCO, а не я!), В противном случае вызов getAutoDispatchQueueGroup возвращает ошибку «Объект не может выполнить запрошенную операцию».
Я пытался использовать WindowsFormsSynchronizationContext и BeginInvoke, но ни один из них не работал.