Phần mềm Selenium

Selenium là gì ? Selenium webdriver dùng để làm gì ?

Trong lập chạy kiểm thử website, ta thường được nhắc tới Selenium Webdriver. Vậy Selenium là gì ?

Trong thực tế, các lập trình viên website cần phải kiểm thử các web trong thực tế sử dụng. Nhưng chẳng ai có nhiều nhân công ( tester ) tới mức có thể kiểm thử hàng ngàn lượt truy cập một lúc. Và Selenium ra đời để giải quyết các vấn đề đó ! Vậy cụ thể thì Selenium là gì ?

Phần mềm Selenium

Selenium là gì ?

Selenium là bộ kiểm thử tự động miễn phí (mã nguồn mở) dành cho các ứng dụng web trên các trình duyệt và nền tảng khác nhau. Kiểm thử được thực hiện bằng cách sử dụng công cụ Selenium thường được gọi là Kiểm thử Selenium. Trang web chính: https://www.seleniumhq.org

Selenium có thể chạy trên các hệ điều hành khác nhau tùy thuộc vào mã nguồn nó hỗ trợ. Thông qua một webdriver, Selenium sẽ lệnh cho phần mềm duyệt web như Firefox hay Chrome thực thi các lệnh được lập trình sẵn theo kịch bản cho trước.

Selenium có thể dịch kịch bản viết bằng mã nguồn Java, Javascript, C#, PHP, Python hay Ruby, thậm chí là Objective-C. Tùy theo mã nguồn nào mà họ phải cài nhân Selenium đó. Ví dụ như Javascript thì ta có Selenium Webdriver tại đây: https://www.npmjs.com/package/selenium-webdriver

Còn với các bạn sử dụng PHP thì có thể download tại đây: https://github.com/facebook/php-webdriver

Vì Selenium Webdriver là mã nguồn mở nên mọi thứ đều được đóng góp bởi các lập trình viên trên toàn thế giới. Bạn có thể gỡ được mọi rắc rối bằng cách tham gia cộng đồng stackoverflow !

Lưu ý: Selenium được coi là một phần mềm, không phải một loại “mã nguồn”

Những ai cần sử dụng Selenium ?

Những người làm trong ngành big-data, đào dữ liệu, cào website, thử nghiệm web đều sẽ dùng Selenium !

Ví dụ như trang XX nào đó không cho phép copy bằng chuột, bạn có thể lập kịch bản cho Selenium copy toàn bộ website đó về cực đơn giản trong nháy mắt. Vì chúng là một trình duyệt thật được thao tác giống như người qua một kịch bản mà ta nạp vào nó !

Sản phẩm chính của Selenium

Selenium có 2 bản chính, tùy theo mục đích sử dụng của các bạn !

Selenium Webdriver

Selenium Webdriver là phần mềm điều khiển trình duyệt thông qua  phần mềm webdriver tương ứng với trình duyệt đó. Ví dụ bạn muốn điều khiển Firefox thì ta download GeckoDriver về. Còn với Chrome thì có ChromeDriver. Tương ứng với hệ điều hành bạn đang sử dụng để download cho đúng bản !

Selenium Webdriver đọc kịch bản của bạn thông qua mã nguồn tương ứng. Sau đó sẽ lệnh cho Webdriver thực thi lên trình duyệt thật. Vì thế mà các website chặn robots cũng khó có thể chặn được Selenium !

Selenium Webdriver rất mạnh, nó mạnh nhất là tính tùy biến kịch bản cho việc testing. Bạn có thể lệnh cho nó đọc tựa đề website, click vào chỗ này, điền chữ này … thậm chí bạn có thể quản lý cả các iframe trong trang …

Selenium Webdriver cũng đọc được cả AJAX trên trang bằng lệnh đợi, có thể chèn thêm Javascript vào trang, tải hình ảnh hay chụp ảnh màn hình website …

Và một điểm mạnh khác: Selenium Webdriver có thể triển khai đồng loạt qua Selenium Grid. Một script thử nghiệm có thể được thực hiện ở hàng ngàn máy khác nhau.

Selenium IDE

Selenium IDE là một plugin nhúng vào trình duyệt. Bạn sẽ rất nhanh chóng tạo kịch bản và chạy chúng lặp đi lặp lại trên trình duyệt cho tới khi nào mỏi tay thì thôi !

Selenium IDE hỗ trợ Firefox, Chrome và Safari. Bạn có thể tải về và nghịch ngợm tại đây: https://www.seleniumhq.org/projects/ide/

Điểm yếu của Selenium ?

Một số bạn cào dữ liệu về sử dụng Selenium sẽ sớm nhận ra: Selenium rất tốn tài nguyên máy và hay bị treo / lỗi một đống ra console của các bạn !

Việc sử dụng Selenium trong thời gian dài ( ví dụ chạy thử nghiệm cả ngày ) có thể dẫn tới treo / làm chậm máy, hoặc ra sai kết quả. Bản thân Jam viết Selenium script rất tốt mà cũng vẫn bị tình trạng đó. Nói chung nó chạy tốn tài nguyên ghê gớm.

Sẽ sớm thôi, trong các bài viết sau, mình sẽ hướng dẫn các bạn sử dụng và làm chủ Selenium !

Chúc các bạn vui !

TÁC GIẢ:

Tôi là Jam, thâm niên 7 năm thiết kế website và làm SEO. Hãy theo dõi blog của tôi để nhận được nhiều chia sẻ thú vị xung quanh chủ đề công nghệ.
Trang chủ / Công nghệ / Phần mềm / Selenium là gì ? Selenium webdriver dùng để làm gì ?
Bạn có thấy bài viết về selenium webdriver thú vị ? Chia sẻ ngay tới mọi người, hoặc tham gia bình luận thật sôi nổi nhé !

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *