Currently Empty: 0.00₫
Automation Test
Cập nhật tự động Browser Driver trên Selenium 4.6

Lỗi SessionNotCreatedException do ChromeDriver không tương thích
Trong quá trình phát triển test automation với Selenium, nhiều Automation Engineer (AE) thường gặp lỗi sau:
org.openqa.selenium.SessionNotCreatedException: Could not start a new session.
Message: session not created: This version of ChromeDriver only supports Chrome version 114.
Current browser version is 125.0.6422.60
Vậy fix nó như thế nào ?
1. Cập nhật Selenium và cấu hình pom.xml
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>4.11.0</version>
</dependency>
2. So sánh cách khởi tạo WebDriver
Cách cũ:
Trước khi khi bạn config Driver, thường bạn sẽ sử dụng config static path cho Driver hoặc cao cấp hơn bạn sử dụng WebDriverManager để setup, tuy nhiên vẫn khá phức tạp và bạn cần add thêm các library vào pom.xml như sau:
@Test
public void Login_DemoQA_001() {
String chromeDriverPath = "src/test/resources/driver/chromedriver";
System.setProperty("webdriver.chrome.driver", chromeDriverPath);
WebDriverManager.getInstance(DriverManagerType.CHROME).setup();
// Dùng WebDriverManager
ChromeOptions chromeOptions = new ChromeOptions();
chromeOptions.addArguments("--max-window-size");
chromeOptions.addArguments("--remote-allow-origins=*");
WebDriver webDriver = new ChromeDriver();
}
Cách mới (tối ưu với Selenium Manager):
Từ Selenium 4.6, bản Selenium Manager ra đời và hoàn toàn giúp chúng ta quản lý và download các driver tương ứng với browser hiện tại, bạn hãy thực hiện như sau để sử dụng:
1. Remove toàn bộ các config Driver cũ
2. Thực hiện copy đoạn code init dưới đây vào project của bạn
@Test
public void Login_DemoQA_001() {
ChromeOptions chromeOptions = new ChromeOptions();
chromeOptions.addArguments("--start-maximized");
chromeOptions.addArguments("--remote-allow-origins=*");
WebDriver mWebDriver = new ChromeDriver(chromeOptions);
mWebDriver.get("https://demoqa.com/text-box");
}
👉 Không cần cài ChromeDriver thủ công hay dùng thư viện thứ ba.
👉 Nên dùng @BeforeMethod với TestNG hoặc JUnit để tái sử dụng và bảo trì dễ hơn.
3. Kiểm tra thư mục driver đã tải (macOS)
cd ~/.cache/selenium
ls
Kết quả:
chromedriver
resolution.properties
selenium-manager.json
File cấu hình bạn có thể kiểm tra (selenium-manager.json):
{
"drivers": [
{
"driver_name": "chromedriver",
"driver_version": "138.0.7204.49",
"major_browser_version": "138"
}
]
}
4. Selenium Manager là gì?
- Là trình quản lý driver chính thức từ Selenium 4.6+
- Giúp tự động tải & cấu hình ChromeDriver, GeckoDriver,…
- Không cần đặt driver vào PATH hoặc dùng WebDriverManager