Java를 활용하면 Selenium WebDriver에서 인증 팝업(Authentication Popup)을 간단하게 처리할 수 있습니다. 핵심 원리는 별도의 창 전환이나 외부 라이브러리 없이, URL 자체에 사용자 이름과 비밀번호를 포함시켜 페이지에 접근하는 것입니다.
인증 팝업 처리 방식
브라우저가 띄우는 기본 인증 창은 일반적인 웹 요소처럼 로케이터로 접근할 수 없습니다. 따라서 아래와 같은 형식으로 URL에 사용자 자격 증명을 직접 삽입합니다.
https://username:password@URL https://admin:admin@the-internet.herokuapp.com/basic_auth
위 예시에서 admin은 사용자 이름이자 비밀번호이며, 대상 URL은 www.the-internet.herokuapp.com/basic_auth입니다. 이제 실제 코드로 아래와 같은 인증 팝업을 처리해 보겠습니다.

예제 코드
다음은 Java를 이용한 전체 코드 구현 예시입니다.
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
public class AuthnPopup {
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver", "C:\\Users\\ghs6kor\\Desktop\\Java\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
String u = "admin";
// URL에 사용자 이름과 비밀번호 추가
String str = "https://" + u + ":" + u + "@" + "the-internet.herokuapp.com/basic_auth";
driver.get(str);
// 인증 완료 후 텍스트 추출
String t = driver.findElement(By.cssSelector("p")).getText();
System.out.println("Text is: " + t);
// 브라우저 종료
driver.close();
}
}코드 설명
- 자격 증명 조합: 사용자 이름과 비밀번호를 변수로 선언한 뒤, URL 문자열 사이에 연결하여 인증 정보를 포함한 주소를 생성합니다.
- 페이지 접속: driver.get() 메서드로 해당 URL에 접근하면 브라우저가 자동으로 인증을 통과합니다.
- 결과 확인: 인증 성공 후 화면에 표시되는 문구를 CSS 선택자로 추출하여 콘솔에 출력합니다.
실행 결과
코드를 실행하면 인증 팝업이 자동으로 처리되고, 인증 후 페이지의 텍스트가 정상적으로 출력됩니다.
