Я пишу пользовательский элемент управления WinForms на C # и хочу его протестировать (не TDD, я начал с того, что написал компонент и заставил его работать, но я устал от поиска ошибок, так что теперь я хочу тесты).Моя проблема в том, что я не могу сделать дочерний элемент управления (всплывающее меню) видимым во время тестирования.(Я понимаю, что он не будет отображаться - я не хочу , чтобы он появился, но я все еще хочу убедиться, что он будет отображаться при нормальной работе.)
Вот соответствующий тестовый код:
updater.Raise(it => it.StateChanged += null, AutoUpdaterState.Ok);
[Примечание: выше приведен код Moq, который вызовет событие;это работает, просто проигнорируйте детали и подумайте, «событие, которое заставит меню стать видимым, вызвано».]
Assert.IsTrue(sut.checkToolStripMenuItem.Visible);
А вот соответствующий код в элементе управления:
checkToolStripMenuItem.Visible = true;
Проблема в том ... Я поставил точку останова на этой строке, и Visible остается ложным после того, как я ее запустил.Я понимаю, что это, вероятно, потому, что я тестирую его, и меню на самом деле не становится видимым ... это нормально, но как мне это проверить?