fbpx
kiem thu tu dong

Tìm hiểu về kiểm thử tự động (Automation Test)

Kiểm thử tự động (Automation testing) là gì?

Kiểm thử tự động (Automation testing) là quá trình sử dụng những công cụ hỗ trợ để kiểm thử phần mềm. Đây là quá trình chạy lại các kịch bản kiểm thử đã được kiểm thử thủ công, lặp lại nhiều lần.

Tại sao phải kiểm thử tự động?

Kiểm thử tự động rất quan trọng vì những lý do sau:

  • Kiểm thử thủ công tất cả các kịch bản nhiều lần sẽ gây tốn thời gian và tiền bạc
  • Rất khó để kiểm thử thủ công các trang web hay phần mềm đa ngôn ngữ
  • Kiểm thử tự động không cần sự can thiệp của con người. Có thể chạy kiểm thử tự động qua đêm mà không cần giám sát.
  • Kiểm thử tự động làm tăng tốc độ thực hiện kiểm thử
  • Kiểm thử tự động hóa giúp tăng phạm vi kiểm thử
  • Kiểm thử thủ công có thể trở nên nhàm chán, do đó dễ bỏ sót lỗi.

Các bước cơ bản để thực hiện kiểm thử tự động

Có rất nhiều công cụ hữu ích để viết các kịch bản kiểm thử tự động, trước khi sử dụng các công cụ đó, tốt hơn là hình dung ra quy trình có thể được sử dụng để tự động hóa kiểm thử.

  • Xác định các vùng trong phần mềm để kiểm thử tự động.
  • Chọn công cụ thích hợp tự động hóa kiểm thử.
  • Viết test script.
  • Tạo ra các test suite.
  • Thực thi các test script.
  • Xây dựng báo cáo kết quả.
  • Tìm lỗi hoặc vấn đề performance.

Khi nào nên thực hiện kiểm thử tự động

Kiểm thử tự động nên được sử dụng theo những phương diện sau:

  • Các dự án lớn và trọng điểm.
  • Những dự án yêu cầu kiểm thử thường xuyên trong cùng một lĩnh vực.
  • Những yêu cầu không thường xuyên thay đổi.
  • Truy cập ứng dụng để kiểm tra tải và hiệu suất với nhiều người dùng ảo.
  • Kiểm tra tính ổn định của phần mềm trên quan điểm của kiểm thử thủ công.
  • Tính khả dụng của thời gian

Những test cases  có thể kiểm thử để tự động:

  • Rủi ro cao – Các test cases quan trọng
  • Các test cases được thực hiện nhiều lần
  • Các test cases khó thực hiện thủ công
  • Các test cases tốn thời gian

Những test cases không phù hợp với tự động hoá:

  • Các test cases được thiết kế mới và chưa được thực hiện thủ công ít nhất một lần
  • Các test cases có các yêu cầu thường xuyên thay đổi
  • Các test cases được thực hiện trên cơ sở ad-hoc.

kiem-thu-tu-dong

Ưu điểm của kiểm thử tự động

  • Cải thiện hiệu quả:

Đầu tiên, lợi ích cụ thể được nói đến là ”Nâng cao hiệu quả”. Khi cần kiểm tra hồi quy hay phải hao phí về mặt thời gian thì kiểm thử tự động mang lại hiệu quả rõ rệt (có thể thực hiện kiểm thử ngay cả khi không có người bất kể ngày hay đêm)

  • Cải thiện độ chính xác:

Khi dùng kiểm thử tự động, dù có lặp đi lặp lại bao nhiêu lần thì cũng cho ra các thao tác và kết quả giống nhau. Do đó tránh được những rủi ro không cần thiết. Ngoài ra, nếu một lỗi được tìm thấy, nó có thể được tái tạo bằng cách đơn giản là thực hiện cùng một kịch bản tự động, dẫn đến cải thiện khả năng tái lỗi. Kiểm thư tự động còn có tính năng các thao tác test được lưu lại tự động, dễ dàng kiểm tra và cưỡng chế lỗi trong thời gian kiểm thử

Nhược điểm của kiểm thử tự động

Các công cụ kiểm thử tự động mặc dù rất thuận tiện về nhiều phương diện nhưng thực tế dù như thế nào đi chăng nữa thì nó cũng không phải là một công cụ có thể thay thế hoàn toàn quá trình kiểm thử. Để thực hiện các thiếp lập tự động thì vẫn cần có con người, phải bỏ công sức, tiền bạc và thời gian

  • Mất thời gian và công sức để tạo mới và chỉnh sửa test script.
  • Mất chi phí cho các các công cụ tự động hóa như phí bản quyền, bảo trì, tìm hiểu, giáo dục

Lưu ý:

Trong một số trường hợp kiểm thử tự động chứng tỏ được sự quan trọng của nó. Nhưng nó cũng chứa một số rủi ro cần phải được xem xét trước khi áp dụng kiểm thử tự động cho dự án của bạn:

  • Chi phí khởi đầu cho kiểm thử tự động rất cao

Bất kỳ dự án lớn nào cũng cần một đội ngũ kiểm thử, việc thuê số lượng người thử nghiệm thủ công thực sự hiệu quả về chi phí. Chi phí tự động hóa là nhiều hơn cho thiết lập ban đầu như: chi phí mua công cụ tự động hóa, đào tạo và bảo trì các kịch bản kiểm thử chi phí rất cao.

  • Kiểm thử tự động không phải là 100%

Kiểm thử tự động không thể là 100%. Kiểm thử tự động có thể được áp dụng cho việc kiểm thử hồi quy, hiệu suất (performance), chịu tải (load/stress test). Các lĩnh vực như giao diện người dùng, tài liệu, cài đặt, khả năng tương thích và phục hồi thì phải được thực hiện thủ công.

  • Không kiểm thử tự động với trường hợp UI không cố định

Nếu giao diện người dùng luôn thay đổi, chi phí liên quan đến bảo trì tập lệnh sẽ rất cao.

  • Người kiểm thử nên có kiến thức lập trình tốt

Người kiểm thử có kiến thức lập trình tốt có thể sử dụng công cụ tự động hóa tốt hơn và giải quyết vấn đề ứng dụng tốt hơn.

Một vài công cụ kiểm thử tự động

Nếu bạn muốn trở thành kỹ sư kiểm thử phần mềm tự động, hãy comment vào bên dưới “Tôi muốn học kiểm thử tự động” chúng tôi sẽ giúp các bạn.

Tìm hiểu về Kiểm Thử Tự Động

Related Articles

Responses