Automation skills cho tester già mà lười
Sau hơn 10 năm gắn bó với nghề kiểm thử phần mềm, VNTesters đã từng trải qua thăng có (lead nhiều project, có nhiều member…), trầm có (không project, không member…). Bài này mình đề xuất một vài automation skills cho tester già mà lười giống VNTesters.
Ngoài công việc ra thì gia đình, con cái hầu như đã chiếm gần hết quỹ thời gian 24h/ngày của mình. Thấy có gì đó hơi hơi tiếc nuối về tuổi trẻ đã giành không ít thời gian cho những chuyện vô bổ. Nhớ thời kỳ VLTK mới ra, hầu như mình đều dành 2-3h mỗi ngày để cày game. Nếu giành thời gian đó để học cái gì đó như ngôn ngữ lập trình nào đó, có lẽ giờ mình cũng đã có thể viết được vài cái app nho nhỏ hữu ích nào đó rồi.
Ok! hết 2 phút retrospective (ai từng làm Agile có lẽ sẽ quen với từ này), mình đã giành chút ít thời gian hiếm coi còn lại để định ra kế hoạch học thêm kỹ năng gì đó cho công việc. Mục tiêu là phải hữu ích cho công việc và phải phù hợp với lứa tuôỉ (già) và tính cách (lười). Kết quả cuối cùng là luyện vài kỹ năng kiểm thử tự động (automation skills cho tester già). Mà cụ thể là Selenium, ngôn ngữ dùng để viết script là Python. Tại sao lại là Selenium và Python? Các bạn đọc tiếp nhé…
Tại sao mình chọn Selenium?
Trên thị trường có khá nhiều các công cụ kiểm thử cho Desktop cũng như Web. Mình chọn Selenium vì nó phổ biến, cộng đồng mạnh, miễn phí và nhất là có thể kiếm job được hoặc chí ít có thể chém gió khi phỏng vấn vị trí kỹ sư kiểm thử phần mềm.
Các bạn có thể tham khảo kết quả khảo sát trên Facebook Group về automation tool hiện đang được sử dụng tại đây
Selenium Webdriver được tiến cử bởi W3C. Nó hỗ trợ những trình duyệt phổ biến. Điều này có nghĩa là Test viết 1 lần mà có thể chạy trên nhiều trình duyệt khác nhau. Webdriver đã thay đổi cách thức kiểm thử web. Các công cụ kiểm thử tự động hay Test Framework chỉ cần gọi WebDriver APIs, và nó hoạt động trên hầu hết các trình duyệt hiện hành.
Tại sao mình chọn Python?
Selenium Webdriver hỗ trợ khá nhiều ngôn ngữ lập trình dùng để viết test script. Java có vẻ như đang được ưa chuộng tuy nhiên đang có sự dịch chuyền dần sang Python. Theo tìm hiểu của VNTesters thì Selenium Python chạy nhanh hơn Selenium Java (mình chưa kiểm chứng được cũng chưa thấy official report nào). Anh chị em có thể tham khảo danh sách ngôn ngữ lập trình dùng để viết testscript tại đây https://www.seleniumhq.org/about/platforms.jsp#programming-languages
Tuy nhiên nguyên nhân chính mình chọn Python là do nó đơn giản và dễ học hơn Java hay C#. Nghe có vẻ rất phù hợp cho một người già và lười như VNTesters.
Kế hoạch luyện skills
Mình sẽ bỏ qua Selenium IDE, Selenium Grid, Selenium RC mà đi ngay vào Selenium WebDriver. Nếu tình hình cho phép mình sẽ ghi chú lại quá trình học của mình để các bạn tham khảo và chỉ giáo
- Bước 0: Cài đặt Eclipse & PyDev. Có nhiều lựa chọn cho script/code editor hoặc IDE (Integrated development environment). Mình sẽ giải thích tại sao mình chọn bộ đôi này trong bài cài đặt.
- Bước 1: Học cơ bản về python. Mình bỏ qua bước này tuy chưa rành Python cho lắm. Làm đến đâu google đến đó. Mình chủ yếu tham khảo và học (nếu có thời gian) từ cuốn này http://www.diveintopython3.net/
- Bước 2: Luyện PyUnit, nếu có cơ duyên có thể làm thêm unit test (white-box testing)
- Bước 3: Viết 1 test case đơn giản với Python Selenium Webdriver
- Bước 4: Framework
Lời kết
Kế hoach là vậy (Automation skills cho tester già). Mọi ý kiến đóng góp cũng như phê bình đều được hoan nghênh. Các bạn ráng chờ tester già mà lười trong loạt bài tiếp theo nhé. Trong lúc chờ đợi các bạn có thể đọc bài tự học kiểm thử tự động với Selenium, học gì để trở thành automation tester và tham khảo báo cáo lương tester.