Я пытаюсь реализовать кодированные тесты пользовательского интерфейса, но столкнулся с проблемой. Всякий раз, когда тест проходит по текстовому полю с замаскированным расширителем редактирования, он записывает маску как часть ввода, но не вводит эту маску, когда «печатает» этот ввод во время воспроизведения. Пример: маска для даты - « / / ____». Если я введу 02 02 2010, текстовое поле правильно показывает 02/02/2010, а тест правильно записывает 02/02/2010. Однако при запуске теста он вводит 02022010, что приводит к сбою и вызывает остановку теста.
Мой текущий обходной путь - поместить оператор, выполняющий ввод, в блок try-catch, а затем вручную добавить вызов Mouse.Click ([элемент управления, к которому прикреплена маска]) позже. Это, кажется, заставляет "огонь" маски, и вещи могут продолжаться. Тем не менее, это очень неприятно, поскольку в этом конкретном проекте широко используются замаскированные расширители.
Кто-нибудь знает лучший способ?