2014-01-08 123 views
1

我目前運行我硒webdriver的測試在2個瀏覽器(studentdrivertutordriver如何在使用selenium webdriver運行測試時獲取瀏覽器窗口?

studentdriver = new ChromeDriver();# opening student in chrome browser 
tutordriver = new FrefoxDriver();#opening tutor with firefox browser 

和我的學生瀏覽器,然後再tutorbrowser索思該學生的瀏覽器將是後面tutorbrowser將是正面。當使用studentbrowser運行腳本時,它會自動出現,tutorbrowser會回到背面,但當腳本開始使用tutorbrowser運行時,它不會出現在正面,它會在兩者之間產生問題。

我需要一個解決方案,當腳本開始在tutorbrowser上運行時,獲得tutorbrowser前端。

注:我不應該關閉studentbrowser,因爲我在@After

+0

不確定瀏覽器是否在另一個後面會導致問題。一旦你開始執行操作,它應該工作。 – Vinay

回答

0

不幸都關閉瀏覽器,這是一個操作系統的問題。窗口管理器負責處理窗口的覆蓋,拼貼和組織,這些不能直接從代碼中控制。

最好的選擇就是啓動一個Sikuli機器人,您將能夠帶回正確的窗口。這是一些工作,不過,在測試中,包括,但它可以從Java中使用沒有問題

見獸在http://www.sikuli.org

1

((JavascriptExecutor)驅動程序).executeScript(「window.focus ();「);

與每個驅動程序一起嘗試。

+0

+1這工作得很好,是唯一的解決方案,無需查詢所有Windows進程,並通過[討厭]的方式找到窗口! – SolidRegardless

相關問題