Bài viết được sự cho phép của vntesters.com
Selenium-Grid là một chế độ thực thi kiểm thử của Selenium mà ban đầu chỉ hỗ trợ cho Selenium RC như mình có nói ở bài trước. Tuy nhiên, sau này, đội ngũ phát triển của Selenium đã phát triển công cụ này cho cả Selenium WebDriver (Selenium 2).
Selenium-Grid cho phép người dùng thực thi kiểm thử trên nhiều máy khác nhau với nhiều trình duyệt khác nhau. Đặc biệt hơn nữa là, Selenium-Grid còn cho phép chúng ta thực thi kiểm thử với chế độ phân tán.
Thiết lập môi trường cho Selenium-Grid
Để thiết lập môi trường cho Selenium-Grid, đâu tiên chúng ta cần cài đặt Java. Để kiểm tra PC có Java hay không, chúng ta có thể chạy câu lệnh này ở Command Line:
java –version
Nếu máy các bạn có Java thì version hiện tại của Java sẽ được trả về. Các bạn cố gắng lấy version mới nhất của Java nha.
Selenium Server
Kế tiếp là chúng ta cần có Selenium Server. Các bạn có thể download phiên bản mới nhất của Selenium Server ở đây.
Sau khi download Selenium Server về máy, chúng ta cần kiểm tra để chắc chắn rằng chương trình này có thể được sử dụng trên PC của chúng ta.
java –jar selenium-server-standalone-*.jar
Nếu mọi chuyện OK, INFO: Launching a standalone server sẽ được trả về.
Hub và Node
Hub
- Hub là trung tâm phân phối nơi mà chúng ta gửi lệnh đến.
- Chúng ta chỉ có một và chỉ một Hub trong một Selenium-Grid
- Hub chỉ có thể được thiết lập trên một máy
- Máy được thiết lập cho Hub là nơi kịch bản kiểm thử được thực thi, nhưng mà chúng ta sẽ thất trình duyện chạy ở trên Node
Node
- Node là nơi các trình duyện chạy các kịch bản kiểm thử mà chúng ta đưa vào hub
- Có thể có nhiều node trong một Grid
- Node có thể được thiết lập trên nhiều máy với nhiều trình duyệt khác nhau
Thiết lập Hub và Node
Khởi động Hub với câu lệnh:
java –jar selenium-server-standalone-*.jar -role hub
Sau khi thực thi câu lệnh khởi tạo Hub, chúng ta có thể vào http://localhost:4444/grid/console để kiểm tra Hub được khởi tạo thành công.
Thiết lập Node với câu lệnh
java -jar selenium-server-standalone-*.jar -role node -hub [Hub URL]/register
Như vậy là chúng ta đã thiết lập được một node trên một hub và sẵn sàng để sử dụng Selenium-Grid thực thi các kịch bản kiểm thử Selenium.
Mã nguồn để sử dụng Selenium-Grid
URL hubUrl = new URL(“http://[Hub URL]:4444/wd/hub”); DesiredCapabilities capabilities = DesiredCapabilities.Firefox(); driver = new RemoteWebDriver(hubUrl, capabilities);Như vậy, chúng ta đã có thể sử dụng Selenium-Grid cho việc thực thi kiểm thử tự động.
Bài viết gốc được đăng tải tại vntesters.com
Có thể bạn quan tâm:
- Selenium là gì? Một số kinh nghiệm làm việc với Selenium
- Viết 1 Test Case Đơn Giản Với Python Selenium WebDriver
- Tìm hiểu về Headless Browser trong Selenium Webdriver
Xem thêm Việc làm Developer hấp dẫn trên TopDev