2014-01-14 2 views
0

Я тестирую приложение WPF. Один из моих тестовых тестов включает открытие двух экземпляров моего приложения и сравнение некоторых элементов. я могу видеть, что, когда я начинаю каждый экземпляр приложения, они были пронумерованы 1 и 2.Как определить несколько экземпляров окон WPF?

var firstwindow= Sys.process("my App" ,1).WPFObject("HwndSource:AppWindow", WindowTitle).WPFObject("AppWindow", "WindowTitle", 1); 

var secondwindow=Sys.process("my App" ,2).WPFObject("HwndSource:AppWindow", WindowTitle).WPFObject("AppWindow", "WindowTitle", 1); 

Так выше два окна моих экземпляров 2 приложений, которые я хотел бы сравнить.

Есть ли другой способ обращения к этим окнам с несколькими экземплярами?

Спасибо.

+1

У вас есть проблемы с использованием этого способа для ссылок на окна? Кажется, это довольно понятно и понятно, почему вы ищете другой подход? –

+0

Привет, Спасибо, что посмотрели на это. Этот подход работает. Но иногда, когда мой первый экземпляр приложения занимает некоторое время и запускается, второй экземпляр приложения заменяет первое приложение и получает нумерацию 1. – user2993178

ответ

0

Если вопрос состоит в том, что вы хотите отличать свои процессы не от их идентификаторов TestComplete, вам нужно найти другой способ их отличить. Например, если процессы имеют некоторые отличия в их командной строке (например, параметры), вы можете получить процесс из командной строки (C: \ MyAppFolder \ MyApp.exe -firstAppParameter):

var firstApp = Sys.FindChild("CommandLine", "*-firstAppParameter*"); 

Если вы используя сопоставление имен, вы можете добавить параметр CommandLine в схему сопоставления процессов и использовать тот же подход с подстановочными знаками.

 Смежные вопросы

  • Нет связанных вопросов^_^