Selenium WebDriver를 사용하면 브라우저에서 나타나는 HTTP 기본 인증(Basic Authentication) 팝업을 처리할 수 있습니다. 핵심 원리는 간단합니다. 페이지 URL 안에 직접 사용자 인증 정보를 삽입하는 것입니다. 즉, 일반적인 URL 형식 대신 사용자 이름과 비밀번호를 URL 경로 앞부분에 함께 넣어 요청하면, 별도의 팝업 조작 없이도 인증이 자동으로 통과됩니다.
URL 인증 문법
인증 정보를 포함한 URL의 기본 형식은 다음과 같습니다.
https://사용자이름:비밀번호@URL 예시: https://admin:admin@the-internet.herokuapp.com/basic_auth 여기서 'admin'은 사용자 이름이자 비밀번호입니다. 대상 URL: www.the-internet.herokuapp.com/basic_auth
위와 같은 방식으로 URL을 구성하면, 아래처럼 화면에 나타나는 인증 팝업을 자동으로 통과할 수 있습니다.

Java 예제 코드
다음은 ChromeDriver를 이용해 인증 팝업을 처리하고, 인증 성공 후 페이지에 표시되는 텍스트를 가져오는 전체 예제입니다.
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("출력 텍스트: " + t);
// 브라우저 종료
driver.quit();
}
}실행 결과
코드를 실행하면 인증 팝업이 별도의 조작 없이 자동으로 통과되며, 인증 후 페이지의 문구가 콘솔에 출력됩니다.

참고 사항
이 방식은 간편하지만 몇 가지 유의할 점이 있습니다. 최신 버전의 Chrome 및 Firefox 보안 정책상 URL에 자격 증명을 포함하는 방식이 제한되거나 차단될 수 있습니다. 이 경우 Alert API(driver.switchTo().alert())를 활용해 인증 팝업을 직접 다루거나, Chrome DevTools Protocol(CDP) 또는 BASIC 인증 헤더 설정 같은 대체 기법을 사용하는 것이 좋습니다. 또한 실제 운영 환경에서는 사용자 이름과 비밀번호를 소스 코드에 하드코딩하지 말고, 환경 변수나 외부 설정 파일로 관리하는 것이 보안 측면에서 바람직합니다.