Я только что начал с Microsoft Test Manager 2015 и создал два тестовых примера.Test Runner не может найти элементы управления во время воспроизведения
Первый включает в себя щелчок по значку в трее и выбор записи оттуда - это прекрасно работает.
Второй случай немного сложнее, я хотел заполнить форму в окне WPF и нажать несколько кнопок.
Запись прошла без проблем, но воспроизведение не работает вообще. Он должен начинаться с выбора TabItem, выбора другого TabItem, который находится внутри предыдущего выбранного TabItem, а затем заполнить текстовые поля и нажать кнопку и подтвердить два диалога сообщений.
Проблема в том, что TestRunner не может найти какой-либо элемент управления. Даже если я выберу правильный TabItem и просто попробую выполнить один из шагов «enter someText here», это займет некоторое время, а затем выбрасывает исключение на моем лице, которое, грубо говоря, говорит, что повторение выбранного шага не может быть завершена, потому что не удалось найти элемент управления, соответствующий свойствам поиска (?). Затем следует a Список:
TechnologyName: 'UIA'
FrameworkId: 'WPF'
ControlType: 'TabPage'
AutomationId: 'sometabname'
все это правильно. Если я попытаюсь выполнить другой тестовый шаг, он говорит в основном то же самое, но вместо «ControlType: TabPage» он говорит «ControlType: Edit».
Я не уверен, как действовать дальше. Я сделал некоторые поиски, но все, что я мог найти, это вопросы о настройке/настройке UIAutomation, но насколько я могу судить, я не могу влиять/контролировать это непосредственно в MTM.
редактировать
После упрощения теста «случая» (просто нажмите на кнопку прерывания, которая помещается непосредственно в Window/первой сетке) и редактирование файла mtm.exe.config и позволяющую трассировке/протоколирование I получил это из соответствующего логфайл:
mtm.exe, Playback - [WARNING] Internal warning: Target element "[UIA]FrameworkId='WPF' && ControlType='Button' && AutomationId='closeWithoutSave'" was not found, so all intermediate elements were ignored. An incorrect element that matches target element Id can be found as the result. Verify that all intermediate elements in QueryId have valid and unique Ids
mtm.exe, Playback - [WARNING] Internal warning: Search failure: [UIA]FrameworkId='WPF' && ControlType='Button' && AutomationId='closeWithoutSave' | Performed (4) searches, UI element not found
mtm.exe, Playback - {1} [FAILED] Function ElementFetcher::FindScreenElement failed to locate UI element (;[UIA]FrameworkId='WPF' && ControlType='Button' && AutomationId='closeWithoutSave') (Das angegebene Objekt wurde nicht gefunden.)
что такое странное в том, что я даже установить Automation.AutomationID на эту кнопку, и он до сих пор не удалось. Кроме того, я не уверен, что это правильно, но поиск, похоже, не включает имя/automationID окна, в котором есть эта кнопка. Поскольку в этот момент в приложении открыто два окна, я мог представить, что это проблема.