Невозможно ввести текст в поле редактирования внутри модального окна / диалога с помощью Teststack / White - PullRequest
0 голосов
/ 01 мая 2018

Я пытаюсь ввести текст в поле редактирования в модальном окне. Я получаю сообщение об ошибке "Не удалось получить (ControlType = edit или ControlType = document), AutomationId = 1118, ClassName = Edit"

Ниже приведен мой код.

var window = app.GetWindow("Toolkit Version"); Window AuthWindow = null; AuthWindow = window.ModalWindow("Please Authenticate"); TextBox userNameField = AuthWindow.Get<TextBox>(SearchCriteria.ByClassName("Edit").AndAutomationId("1118")); userNameField.Text = "Administrator"; Из проверки

image

Сведения об ошибке - TestStack.White.AutomationException: 'Failed to get (ControlType=edit or ControlType=document),AutomationId=1118,ClassName=Edit'

Есть предложения или обходные пути? Спасибо!

1 Ответ

0 голосов
/ 07 мая 2018

с макушки головы:

  1. Возможно, ваши критерии поиска слишком ограничены? Попробуйте:

    TextBox userNameField = AuthWindow.Get<TextBox>(SearchCriteria.ByAutomationId("1118"));
    

    или даже

    TextBox userNameField = AuthWindow.Get(SearchCriteria.ByAutomationId("1118")) as TextBox;
    
  2. Это может быть не очень элегантно, но похоже, что ваше окно маленькое и имеет мало элементов управления. Почему бы не выбрать их таким образом?

    TextBox userNameField = AuthWindow.GetMultiple(SearchCriteria.ByControlType(System.Windows.Automation.ControlType.Edit)[0]
    

Я предположил, что ваше текстовое поле находится в позиции 0, но, конечно, вы можете это изменить.

...