Я бы посоветовал лечить основное заболевание, а не симптом.
Потратьте несколько минут, чтобы прочитать эти
Короче говоря, используйте интерфейс, чтобы отделить все всплывающие окна модального диалога - что является болью в шее для автоматизации тестирования пользовательского интерфейса. Затем вы можете заменить фиктивную реализацию интерфейса, которая ничего не делает или возвращает предопределенные значения теста. Реальная реализация, конечно, выдает фактическое диалоговое окно модально ... как-то так (из 2-ой ссылки)
public class UserInterrogator : IUserInterrogator
{
private Form owner;
public UserInterrogator(Form owner)
{ this.owner = owner; }
public Font GetFontFromUser() // member of the IUserInterrogator interface
{
FontDialog fd = new FontDialog();
fd.ShowDialog( owner );
return fd.Font;
}
}
Более простой подход, конечно, написать некоторый код, который находит диалог и закрывает / убивает его. Я видел, как некоторые люди добились определенных успехов с Win32 API и NUnitForms ...