또한 윈도우 ID, 영어 단어의 더 나은 이해로 알려진 때로는 브라우저 창 핸들, 핸들이 무엇인지 설명 할 수 처음에는.
당신은 당신이 탭이 사라집니다 닫을 때까지 그것은 ID, ID를 생성, 사용자가 탭을 열고, 브라우저를 엽니 다.
브라우저에서 하나 개의 탭보다 더 많은 열 경우이 왜 가까운 하나 개의 탭 당신을 더 윈도우 ID, 그러나 다른 탭의 표시에 영향을주지 않습니다, 이것은 ID의 역할이다.
이 문서에서는 핸들 브라우저 양식을 얻거나 여러 형태 사이의 예를 준비하기 위해 스위치 뒷면에 드라이버의 번호로 전화하는 방법을 설명하는 것입니다.
의 만 만 창을 처리 할 때, 탭을 열고 핸들을 인쇄 브라우저에서 살펴 보자.
================================================== ================================================== ======
이 같은 결과를 인쇄 : CDwindow-e3655cc7-5cc1-42cc-a3d0-0d6339d1cfab
ID는 당신이 그렇게, 당신은 인쇄를 인쇄 내가 확실히 다른 변화 시작할 때마다입니다.
다음으로,이 탭에서 보면, 사용 getWindowsHandles () 메소드를 처리하기 위해 두 개의 창을 인쇄합니다.
================================================== ================================================== ==========================
패키지 rjcs을; 수입 java.text.SimpleDateFormat에; 수입 하는 java.util.Calendar; 수입 은 java.util.List; 수입 java.util.Set을; 수입 org.openqa.selenium.interactions.Actions; 수입 org.apache.commons.io.FileUtils; 수입 org.openqa.selenium.TakesScreenshot; 수입 org.openqa.selenium.firefox.FirefoxDriver; 수입 org.openqa.selenium.interactions.Actions; 수입 org.openqa.selenium.By; 수입 org.openqa.selenium.Keys; 수입 org.openqa.selenium.WebElement; 수입 org.testng.annotations.Test; 가져 org.openqa.selenium *. ; 수입 java.awt.Rectangle의; 수입 java.awt.Robot; 수입 java.awt.Toolkit의; 수입 java.awt.image.BufferedImage; 수입 java.io.File에; 수입 때 java.io.IOException; 수입 javax.imageio.ImageIO; 수입 org.openqa.selenium.OutputType; 수입 com.thoughtworks.selenium.SeleneseTestNgHelper; 공용 클래스 ckqh { 공공 정적 무효 메인 (문자열 []에 args) { System.setProperty를 ("webdriver.firefox.bin", "C : \\ 프로그램 파일합니다 (86) \\ \\ firefox.exe 모질라 파이어 폭스"); // 설치 경로 파이어 폭스를 설정 찾을 수없는 시스템을 방지 FirefoxDriver 드라이버 = 새로운 새로운 FirefoxDriver () ; //은 파이어 폭스 브라우저 인스턴스를 초기화하고, 브라우저를 열 은 try { driver.manage () 창 () 최대화를 (); .. @ 최대화 된 창 에 Thread.sleep ( 3000 ) . driver.manage () 창 () ) (.maximize; // 창 최대화 에 Thread.sleep ( 3000 ) driver.get ( "https://www.baidu.com을"); //웹 사이트, 방법 열기 에 Thread.sleep ( 3000 ); driver.findElementByPartialLinkText ( "홈페이지" ) .click ()을, (Thread.sleep를 3000 ) 에서 System.out.println (driver.getWindowHandle ()); // 이 브라우저 현재 핸들 탭 인쇄 문자열 = ; driver.getWindowHandle () 에 Thread.sleep ( 3000 ); 에서 System.out.println (driver.getWindowHandles ()); // 모든 브라우저 탭을 인쇄 핸들 // 목록을 인쇄 (3000 Thread.sleep를 ) 설정 <문자열> currenWindow driver.getWindowHandles = (); // 얻을 모든 핸들 에서 System.out.println (currenWindow.size ()); // 의 인쇄 핸들 (즉, 윈도우)의 수 스레드. SLEEP ( 3000 ) . driver.switchTo () 창 (A); // 스위치 핸들 에 Thread.sleep ( 3000 ); } 캐치 (예외 E) { e.printStackTrace (); } 최종적으로 { driver.quit (); } } }
결과 :
5f9d93e2-496b-4402 -A938-7968c83920db {}
[{5f9d93e2-496b-4402-A938-7968c83920db}, {8beddbeb-0ce9-414c-8b83-2f8188da6bde}]
2