Взаимодействие с несколькими экземплярами приложения в кодированном интерфейсе

Сценарий, с которым я сталкиваюсь, заключается в том, что я пытаюсь написать один тест, который будет использовать кодированный пользовательский интерфейс для взаимодействия с несколькими экземплярами одного и того же приложения, в данном случае Microsoft Excel. Другими словами, в нескольких окнах будет открыто несколько книг Excel, и мне нужно иметь возможность направлять кодированный интерфейс для программного взаимодействия с конкретным экземпляром. Я изначально думал, что этот тип управления экземплярами будет функциейApplicationUnderTest класс, но не очевидно, как этот класс достиг бы этого.

Взаимодействия будут включать в себя один и тот же UIMap для всех экземпляров (на самом деле каждому экземпляру, возможно, понадобится несколько UIMap, но ради простоты, которую можно игнорировать для этого вопроса, если только он не важен для ответа).

Я уже знаю пару подходов к решению:

Минимизируйте и максимизируйте экземпляры, чтобы в данный момент был виден только тот, который используется в данный момент. В идеале я бы хотел этого избежать. С одной стороны, это может в конечном итоге стать требованием, чтобы два окна были видны одновременно во время испытаний.Динамически изменяйте свойства поиска, чтобы всегда включать некоторый уникальный идентификатор при каждом доступе к карте пользовательского интерфейса. Я не уверен, что лучший кандидат для поиска недвижимости будет здесь.

В идеале я хотел бы, чтобы в Coded UI было что-то более интегрированное, чем любой из этих вариантов, хотя, возможно, последнего будет достаточно в случае необходимости. Буду признателен за любые указания о том, есть ли другие возможные подходы.

Ответы на вопрос(1)

Ваш ответ на вопрос