12/08/2018, 18:03

Kiểm thử tự động trên form Đăng nhập sử dụng Python

Automation testing như một xu thế cần đổi mới và thách thức dành cho QA trong thời đại công nghệ cập nhật từng giờ. Tuy nhiên, đại đa số QA thường kiểm thử manual và có tâm lý ngại code. Một phần do nền tảng code yếu nhưng quan trọng hơn là không cần mất thời gian nghĩ code, debug. Cho nên người ta ...

Automation testing như một xu thế cần đổi mới và thách thức dành cho QA trong thời đại công nghệ cập nhật từng giờ. Tuy nhiên, đại đa số QA thường kiểm thử manual và có tâm lý ngại code. Một phần do nền tảng code yếu nhưng quan trọng hơn là không cần mất thời gian nghĩ code, debug. Cho nên người ta sẵn sàng mất hàng giờ ngồi nhập thủ công để check những form đơn giản như đăng nhập.

Những lý do nên sử dụng kiểm thử tự động để check giá trị các trường của form đăng nhập:

  • Thông thường các form đăng nhập chỉ bao gồm 2 trường là username or email and password. Do đó có thể tái sử dụng code rất đơn giản
  • Sử dụng kiểm thử tự động trong form Đăng nhập tiết kiệm thời gian, tiết kiệm nhân lực, kéo theo rất nhiều lợi ích khác nhất là chi phí dành cho tổ chức sử dụng nhân lực

2.1. Yêu cầu bài toán

Tôi sẽ sử dụng form Đăng nhập của viblo làm ví dụ để kiểm thử tự động giá trị các trường. Trong trường hợp yêu cầu bài toán đơn giản như sau:

  • Gồm 2 trường: Username or Email, Password
  • Username viết liền không dấu, không chứa ký tự đặc biệt. Email đúng theo định dạng ví dụ: aaa@y.z
  • Password có độ dài 8 ký tự, hiển thị ...
  • Trường hợp hợp lệ sẽ chuyển tới màn hình chính của Viblo
  • Trường hợp không nhập Username or Email sẽ hiển thị cảnh báo sau: Username or Email is required
  • Trường hợp không nhập Password sẽ hiển thị cảnh báo sau: Password is required
  • Trường hợp Username or Email and Password không hợp lệ sẽ hiển thị cảnh báo sau: The user credentials were incorrect.

2.2. Các case cần kiểm tra giá trị

Bây giờ, tôi sẽ chỉ ra checklist dành cho việc kiểm thử giá trị các trường. Có thể checklist sẽ chưa cover hết các case mà bạn nghĩ tới. Tuy nhiên, tôi sẽ list ra các case thông thường và đi theo tài liệu yêu cầu. Hãy cố gắng list ra càng nhiều càng tốt đảm bảo đủ hết các case mà bạn nghĩ tới. Điều này là quá tốt không chỉ riêng QA mà Dev cũng rất cần thiết.

STT Checklist Kết quả mong muốn
1 Username or Email hợp lệ Login thành công. Tự động chuyển tới màn hình trang chủ
2 Bỏ trống trường Username or email, Password đúng Đăng nhập không thành công. Hiển thị message: Username or Email is required
3 Username or Email đúng, Bỏ trống trường Password Đăng nhập không thành công. Hiển thị message: Password is required
4 Username or Email sai khi sử dụng ký tự thông thường, Password đúng Đăng nhập không thành công. Hiển thị message: The user credentials were incorrect.
5 Username or Email đúng, Password sai Đăng nhập không thành công. Hiển thị message: The user credentials were incorrect.
6 Username or Email sai khi sử dụng ký tự thông thường, Password sai Đăng nhập không thành công. Hiển thị message: The user credentials were incorrect.
7 Username or Email quá ngắn, Password đúng Đăng nhập không thành công. Hiển thị message: The user credentials were incorrect.
8 Username or Email sử dụng html, Password đúng Đăng nhập không thành công. Hiển thị message: The user credentials were incorrect.
9 Username or Email sử dụng quá độ dài quy định, Password đúng Đăng nhập không thành công. Hiển thị message: The user credentials were incorrect.

2.3. Chuẩn bị

Để viết được các đoạn mã ngoại trừ bạn có 1 chiếc máy tính không cần cấu hình quá cao. Chỉ cần chạy được là ổn             </div>
            
            <div class=

0