Blog

Tổng hợp các bài viết, kinh nghiệm, chia sẻ kiến thức hữu ích về lĩnh vực tuyển dụng, nhân sự.

MANUAL TEST, AUTOMATION TEST LÀ GÌ? ƯU NHƯỢC ĐIỂM CỦA HAI LOẠI TEST

Kiểm thử phần mềm là một bước không thể thiếu khi phát triển bất kì hệ thống, phần mềm hay ứng dụng nào. Có 2 loại kiểm thử phổ biến mà các tester hay lựa chọn để kiểm thử phù hợp với mỗi mục đích riêng. Vậy hai loại kiểm thử này là gì, và ưu nhược điểm của chúng ra sao? Hãy cùng Devwork tìm hiểu ở bài viết dưới đây nhé

Đối với một dự án công nghệ, có ba điều quan trọng cần đặc biệt lưu ý đó là chi phí, thời gian và chất lượng. Bất kì một dự án nào cũng được đặt mục tiêu hàng đầu là có một sản phẩm thật sự chất lượng nhưng phải giảm chi phí và thời gian ở mức tối đa để hoàn thành dự án ấy. Vì vậy mà phần mềm kiểm thử được ra đời, nó đóng vai trò không thể thiếu của bất kì dự án nào. Phần mềm kiểm thử hiện nay có hai loại, bao gồm Manual Test (kiểm thử thủ công) và Automation Test (kiểm thử tự động). 

Uploaded image
Automation test là gì?

Automation testing là thực hiện kiểm thử phần mềm bằng một chương trình đặc biệt với rất ít và hầu như là không có sự can thiệp của con người. Điều này giúp cho cách tester không phải lặp đi lặp lại các thao tác kiểm thử. 

Trong Automation testing có các prescripted tests được viết sẵn và chạy tự động giúp các tester xác định xem ứng dụng đó hoạt động có phát sinh lỗi nào nào không. Automation Test hoạt động rất hiệu quả khi mà tester muốn thực hiện các kiểm tra lặp đi lặp lại để đảm bảo rằng ứng dụng chạy một cách trơn tru sau khi có thay đổi mới. 


Manual test là gì?

Manual testing (kiểm thử thủ công) là việc thử nghiệm phần mềm được làm thủ công bởi con người. Và người thực hiện các công việc kiểm thử đó được gọi là các Tester. Tester thực hiện manual testing đảm bảo rằng một phần mềm hay ứng dụng hoạt động một cách bình thường bằng cách tuân theo các điều kiện được viết trong testcase. Tester sẽ phải đánh giá thiết kế, chức năng và hiệu suất của ứng dụng/ phần mềm ấy bằng cách click các phần khác nhau của hệ thống phần mềm đó.


Ưu nhược điểm của 2 loại test

Đối với Manual testing

Điểm mạnh:

  • Những lỗi về giao diện của phần mềm sẽ được phát hiện nhanh chóng và phải hồi sớm về cho bộ phận phát triển

  • Những thay đổi nhỏ của cấu trúc website sẽ không gặp ảnh hưởng trong quá trình kiểm thử

  • Không đòi hỏi người kiểm thử phải có các kĩ nặng về lập trình

  • Việc thực thi test case mô phỏng đúng với các thao tác mà người dùng sau này thực hiện

  • Người kiểm thử có thể thực hiện adhoc test một cách linh hoạt

  • Đối với các dự án nhỏ, thời gian thực hiện ngắn thì nên ưu tiên sử dụng manual testing để giúp release nhanh chóng hơn

    Điểm hạn chế

  • Tốn nhiều nhân lực và thời gian test

  • Có những bộ test case regression test đòi hỏi phải thực hiện việc lặp đi lặp lại mỗi lần release. Điều này có thể dẫn đến việc release gặp trở ngại nếu bộ test case có số lượng quá lớn

  • Sai sót từ phía tester trong quá trình kiểm thử làm ảnh hưởng đến kết quả kiểm thử, chẳng hạn như quê thực hiện một thao tác nào đó trong kịch bản test.


Uploaded image

Đối với Automation test

Điểm mạnh:

  • Thời gian thực hiện kiểm thử tốn ít thời gian hơn

  • Tiết kiệm được nguồn nhân lực

  • Có khả năng tái sử dụng đối với các test case cần test lại nhiều lần

  • Test report tự động được tạo ra sau khi test script thực thi xong

  • QA có thời gian để research công nghệ mới, đầu tư vào chất lượng sản phẩm

    Điểm hạn chế:

  • Đòi hỏi tester phải có kiến thức về lập trình

  • Chi phí lựa chọn công cụ tự động và viết test script cao

  • Tốn chi phí maintain, debug khi có test script failed vì nhiều nguyên nhân khác nhau


Để có cái nhìn trực quan hơn cho bạn đọc, dưới đây là bảng so sánh sự khác biệt giữa 2 loại test:

Uploaded image

Khi nào thì sử dụng Manual Testing và khi nào thì sử dụng Automation Testing?


Đối với Manual testing:


Manual Testing là lựa chọn phù hợp nhất khi:

  • Exploratory Testing: Đậy là loại kiểm thử đồi hỏi phần mềm/ ứng dụng phải được thử nghiệm bằng kiếm thức, kinh nghiệm, phân tích hay logic và kĩ năng, sáng tại là trực giác. Chúng ta cần có những kĩ năng của con người để đánh giá một cách chính xác nhất để thực hiện quá trình kiểm thử này

  • Usability Testing: Đây là lĩnh vực mà người ta cần để đo độ thân thiện, hiệu quả hoặc thuận tiện cho người sử dụng sau này. Ở đây, yếu tố trực quan của con người là quan trọng nhất, do đó phương pháp kiểm thử thủ công sử dụng ở phần test này là sự lựa chọn hiệu quả nhất.

  • Ad- hoc Testing: Trong kịch bản test này, khong có một phương pháp cụ thể nào. Nó là phương pháp mà người ta hoàn toàn không đưa ra kế hoạch kiểm thử mà sẽ trực tiếp đánh giá phần mềm/ ứng dụng dựa trên những thử nghiệm một cách ngẫu nhiên.


Đối với Automation Testing

Automation testing phù hợp nhất khi được sử dụng

  • Regression Testing: Automation testing được ưu tiên sử dụng vì các thay đổi mã thường xuyên và kahr năng chạy các hồi quy một cách kịp thời.

  • Load Testing: Kiểm thử tự động cũng là cách tốt nhất để hoàn thành các thửu nghiệm có hiệu quả khi nó đi kèm để tải thử nghiệm

  • Performance Testing: thử nghiệm mà đòi hỏi sự mô phỏng của hàng ngàn người dùng đồng thời đòi hỏi tự động hóa.

Uploaded image
Để tối ưu hóa chi phí và thời gian cần thiết để hoàn thành một dự án thành công, chúng ta không thể chỉ phụ thuộc vào kiểm thử thủ công hoặc phương pháp kiểm thử tự động. Cần phải linh hoạt kết hợp giữa kiểm thử thủ công và kiểm thử tự động để có thể tạo ra một sản phẩm tốt nhất tới người dùng.


Trên đây là bài viết “Manual Test, Automation Test là gì? Ưu nhược điểm của hai loại test” do Devwork tổng hợp. Đây chỉ là góc nhìn chủ quan, các bạn nên tìm hiểu rõ và cụ thể từng đối tác để có phương án sử dụng hai loại test này sao cho phù hợp nhất đối với dự án của doanh nghiệp.

Nếu muốn tìm hiểu thêm về cách ngành học để trở thành một lập trình viên, xem thêm tại https://devwork.vn/blog/705/muon-lam-lap-trinh-vien-nen-hoc-nganh-gi

Hiện tại Devwork có nhiều vị trí cho bạn lựa chọn phù hợp

Nếu bạn quan tâm và mong muốn thử sức ở vị trí HR Freelancer, có thể tham khảo công việc trên website của Devwork và đăng ký để trở thành một HR Freelancer ngay tại: https://devwork.vn/dang-ky/hr-freelance

Hoặc bạn muốn đăng ký NTD hãy truy cập ngay tại link website sau: https://devwork.vn/dang-ky/nha-tuyen-dung


Chia sẻ bài viết

Sao chép đường dẫn

Bài viết liên quan

Danh sách bài viết liên quan có thể bạn sẽ thích Xem thêm