Browser Automation
Duy Văn | 25/12/2024
Tự động hoá trình duyệt không có gì lạ, như mình đã nhắc tới ở Automation Testing, một trong những sản phẩm mà tester sẽ động tay vào nhiều nhất là các web application, các thức truy cập vào các web app chính là dùng trình duyệt, vậy thì tự động hoá các script kiểm thử đồng nghĩa với việc tự động hoá trình duyệt.
Mô tả cho dễ hiểu, chuyện xảy ra khi một tester làm manual test web app là dùng trình duyệt được chỉ định, lên web app đó, rồi thực hiện các bước như trong test case của manual test, rồi đối chiếu kết quả quan sát được với kết quả mong muốn.
Còn đối với một automation tester, sau khi test case manual đã được duyệt và thực hiện bởi manual tester, thì auto tester sẽ có trách nhiệm biến bài test đấy thành automation script để tiết kiệm thời gian cho các lần chạy sau (trong tình huống có thể auto được).
Solution
Giải pháp cho tự động hoá trình duyệt chính là các framework tự động hoá trình duyệt, điển hình có hai framework phổ biếnn nhất là Selenium và Playwright. Mình sẽ đi chính phần Selenium, còn Playwright thì nói qua qua chút thôi.
Selenium về cơ bản là một framework tồn tại cũng lâu rồi, opensource và được khá nhiều người ưa chuộng do nó cũng khá đơn giản, đủ mạnh, hỗ trợ các ngôn ngữ lập trình phổ biến như Java, Python, C#, Javascript. Selenium tương tác với Web Driver để thực hiện việc tự động hoá trình duyệt.
Playwright thì mới hơn, chống lưng bởi Microsoft, nhưng cũng opensource, là một framework phải nói cực kỳ mạnh, mạnh và nhanh hơn Selenium, do nó không tương tác với Web Driver mà sử dụng CDP - Chrome DevTools Protocol. Playwright hỗ trợ nhiều ngôn ngữ lập trình, nhưng chủ yếu người tra dùng JavaScript/Typescript và Python.