Я использую Microsoft Coded UI 2012 для автоматизации веб-приложения. Для этой цели я использую dll Selenium WebDriver. Мои требования таковы: 1. Запустите Firefox. 2. Запустите Microsoft Word. 3. Введите некоторые значения в Microsoft Word. 4. Вернитесь в Firefox. (Здесь он не работает) 5. Сделайте какую-нибудь операцию в Firefox.
Пожалуйста, найдите фрагмент кода, который используется ниже:
Driver driverObj = new Driver();
driverObj.InitiateDriver(); //creates a new Firefox driver
String strWindowHandle = driverObj.driver.WindowHandles.ToString(); //getting the windows handle of the firefox browser
this.UIMap.RecordedMethod3(); //recorded method to interact with Microsoft Word
driverObj.driver.WindowHandles.IndexOf(strWindowHandle);//switches the handle back to Firefox
driverObj.GoogleSearch();//performs operation on firefox
this.UIMap.RecordedMethod4();//Recorded method to close Microsoft word.
Теперь проблема, с которой я сталкиваюсь, заключается в следующем: когда запускается слово Microsoft, оно не переключается обратно в окно Firefox. Однако после изменения дескриптора окна операции в окне Firefox выполняются в фоновом режиме. Я хочу отображать выполняемые операции на переднем плане, переключаясь в окно Firefox. Закодированный пользовательский интерфейс не может этого сделать. Однако тест проходит, поскольку все действия выполнены.
IndexOf
вWindowHandles
действительно выполняет действие в пользовательском пространстве? Обычно методIndexOf
просто возвращает Int32 (индекс элемента в массиве или списке) без выполнения каких-либо действий. - person Sam Axe   schedule 14.02.2015