selenium-gid

Thực thi kiểm thử tự động Selenium với Selenium-Grid

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

Kiem Tra Java

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

Kiem Tra Selenium Server

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

Thiet lap 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.

Hub Page

Thiết lập Node với câu lệnh

java -jar selenium-server-standalone-*.jar -role node  -hub [Hub URL]/register

Thiet lap Node

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.

Kiểm thử tự động