Manual Test là quá trình kiểm thử phần mềm bằng cách thực hiện các bước kiểm thử một cách thủ công. Đây là một phương pháp quan trọng để đảm bảo chất lượng phần mềm và cho phép các kỹ sư kiểm thử tìm ra các lỗi mà các công cụ tự động hóa không thể phát hiện được.
Sự khác biệt chính giữa Manual Test và Automation Test là Manual Test được thực hiện bằng tay, trong khi Automation Test được thực hiện bằng các công cụ tự động hóa. Manual Test có thể đòi hỏi nhiều thời gian và công sức hơn Automation Test, nhưng lại cho phép kiểm thử viên hiểu rõ hơn về phần mềm và tìm ra các lỗi mà các công cụ tự động hóa không thể phát hiện được. Tuy nhiên, Automation Test lại nhanh hơn, tiết kiệm thời gian và giúp đạt được độ tin cậy cao hơn khi kiểm thử phần mềm.
Tuy nhiên, không phải tất cả các loại kiểm thử đều phù hợp với Automation Test và Manual Test. Việc lựa chọn phương pháp kiểm thử phù hợp sẽ phụ thuộc vào tính chất của phần mềm và mục đích kiểm thử. Do đó, để đảm bảo chất lượng phần mềm, cần phải lựa chọn phương pháp kiểm thử thích hợp và kết hợp sử dụng cả hai phương pháp Manual Test và Automation Test.
Tham khảo: Cách bắt đầu từ Manual sang Automation Tester
Lan Hoàng
Manual Testing, hay kiểm thử thủ công, là một khía cạnh không thể phủ nhận của quá trình đảm bảo chất lượng trong lĩnh vực công nghệ. Trong khi các phương pháp tự động test ngày càng trở nên phổ biến, Manual Testing vẫn giữ vai trò quan trọng, đặc biệt là khi tác động của con người là không thể thay thế. Trong bối cảnh đó, chúng ta sẽ khám phá thêm về bản chất và giá trị của Manual Testing là gì, cũng như những yêu cầu và kỹ năng cần thiết để trở thành một chuyên gia kiểm thử thủ công đáng chú ý.
Manual Testing là một phần quan trọng trong quá trình kiểm thử phần mềm, được thực hiện bằng tay bởi các chuyên viên kiểm thử mà không sử dụng công cụ hỗ trợ cụ thể. Nhiệm vụ chính của Manual Testing là phát hiện và đánh giá các lỗi từ nhỏ đến lớn trong phần mềm. Qua quá trình này, các chuyên viên kiểm thử có thể tìm ra những vấn đề và đưa ra hướng giải quyết để đảm bảo rằng phần mềm hoạt động một cách ổn định khi chuyển giao cho khách hàng. Điều này giúp cung cấp thông tin chi tiết về chất lượng của sản phẩm và tạo điều kiện cho việc tối ưu hóa hiệu suất và trải nghiệm người dùng.
Để có cái nhìn toàn diện về Manual Testing, ngoài việc hiểu định nghĩa Manual Testing là gì, quan trọng hơn là thảo luận về ưu và nhược điểm của phương pháp này. Hãy theo dõi để hiểu rõ hơn về cả ưu điểm và nhược điểm của Manual Testing là gì nhé!
Đối với việc kiểm thử giao diện, hầu hết các tester sẽ thuận lợi hơn, nhận phản hồi nhanh chóng và trực quan nhất về giao diện của ứng dụng cần kiểm thử. Trong trường hợp chương trình có những thay đổi nhỏ, quá trình Manual Testing sẽ không tốn nhiều thời gian, giúp chúng ta tiết kiệm thời gian kiểm thử đối với các trường hợp nhỏ.
Đồng thời, việc sử dụng kiểm thử thủ công mở ra nhiều cơ hội hơn cho các tester để khám phá kiểm thử. Điều này giúp họ có cơ hội hiểu rõ hơn về những lỗi phức tạp khó phát hiện, từ đó nâng cao kỹ năng và chất lượng của công việc kiểm thử.
Manual Testing sẽ đòi hỏi nhiều thời gian và công sức hơn từ phía tester khi phát hiện các lỗi bug. Kết quả thu được thường ít đáng tin cậy hơn do có thể phát sinh từ những sai sót của con người trong quá trình thực hiện kiểm thử. Trong trường hợp các nhiệm vụ lớn như performance testing và stress testing, việc sử dụng Manual Testing đòi hỏi sự hỗ trợ từ các công cụ chuyên nghiệp để thực hiện, làm tăng độ khó khăn trong quá trình thực hiện.
Mặc dù sử dụng Manual Testing có thể giúp phát hiện lỗi ít hơn so với kỹ thuật tự động, nhưng điều này cũng đi kèm với chi phí cao do phải chi trả cho nguồn nhân lực thực hiện kiểm tra. Ngược lại, việc sử dụng công cụ tự động test mang lại kết quả nhanh chóng và chính xác hơn so với Manual Testing, giúp tối ưu hóa chi phí và thời gian cho dự án.
Theo định nghĩa ở trên, công việc của một Manual Testing tập trung vào việc kiểm tra và đảm bảo chất lượng của phần mềm. Mục tiêu chính là phát hiện lỗi một cách nhanh chóng để có thể báo cáo ngay cho bộ phận kỹ thuật, giúp họ khắc phục lỗi trước khi sản phẩm được giao cho khách hàng. Điều này giúp đảm bảo rằng sản phẩm cuối cùng sẽ đáp ứng đúng yêu cầu và chất lượng.
Với những người mới bắt đầu trong lĩnh vực kiểm thử thủ công, việc trang bị mọi kỹ năng và kiến thức cơ bản là quan trọng để thực hiện công việc hiệu quả. Dưới đây là một số vấn đề cần chuẩn bị:
Để trở thành một kiểm thử thủ công chuyên nghiệp, việc xác định hướng đi chính xác là rất quan trọng. Bạn cần đưa ra quyết định về việc đầu tư vào những kỹ năng nào, học hỏi từ nguồn thông tin nào, rèn luyện những kỹ năng cụ thể, và thực hành như thế nào. Những quyết định này sẽ giúp bạn tự đặt ra mục tiêu và tập trung vào việc phát triển nguồn lực cá nhân, làm sáng tỏ đam mê của bạn và tạo nên sự quyết tâm trong việc học hỏi.
Để trở thành một Manual Testing có hiệu suất, bạn cần trang bị kiến thức đa dạng trong nhiều lĩnh vực như sau:
Kiến thức chung:
Kiến thức riêng cần nắm vững:
Tổng kết, Manual Testing đóng vai trò quan trọng trong quá trình kiểm thử phần mềm, đặc biệt là khi cần sự tinh tế và sự hiểu biết sâu rộng về các khía cạnh của ứng dụng. Bằng cách sử dụng kiểm thử thủ công, chúng ta có thể tận dụng tư duy phân tích và sự nhạy bén của con người để phát hiện lỗi và cải thiện chất lượng sản phẩm. Tuy nhiên, việc này đồng thời đặt ra những thách thức về thời gian và chi phí. Điều quan trọng là hiểu rõ những kiến thức cần thiết và phát triển kỹ năng cần thiết để trở thành một chuyên gia kiểm thử thủ công chất lượng và hiệu quả.
Thông qua những kiến thức về Manual Testing mà chúng tôi đã chia sẻ, bạn hiện đã có cái nhìn rõ ràng về khái niệm Manual Testing là gì, cũng như hiểu rõ hơn về cách để phát triển thành một chuyên gia kiểm thử thủ công đáng chú ý. Chúc bạn sớm đạt được những thành công lớn trong hành trình theo đuổi những hoài bão và ước mơ của mình!
Xem thêm:
Dù bạn đang tìm kiếm gì, FPT Shop luôn sẵn lòng đáp ứng nhu cầu của bạn. Từ điện thoại, laptop đến các sản phẩm gia dụng và nhiều thứ khác, FPT Shop đảm bảo mang đến cho bạn chất lượng và giá trị tốt nhất.
Xem các laptop hot nhất đang bán tại FPT Shop tại đây.
Nhập số điện thoại mua hàng để hưởng đặc quyền riêng tại FPT Shop
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 hoặc không có sự tương tác của con người, giúp tester không phải lặp đi lặp lại các bước nhàm chán. Trong Automation testing, có các pre-scripted tests được viết sẵn và chạy tự động. Các tests được chạy để so sánh kết quả thực tế với kết quả mong đợi. Các tests chạy tự động giúp tester xác định xem ứng dụng có hoạt động đúng như mong đợi hay không. Automated tests hoạt động rất hiệu quả khi cần thực hiện các kiểm tra lặp lại và hồi quy để đảm bảo rằng một ứng dụng hoạt động chính xác sau khi có thay đổi mới. Các automated tests chạy với sự trợ giúp của các công cụ, tập lệnh và phần mềm để thực hiện các hành động được xác định trước được viết trong test case.
Cách thực hiện Manual Testing
Manual Testing được thực hiện lần lượt theo các bước sau:
Đọc và hiểu tài liệu (hướng dẫn) về dự án phần mềm; nghiên cứu ứng dụng đang thử nghiệm (nếu có)
Phác thảo test cases gồm các yêu cầu được đề cập đến trong tài liệu (hướng dẫn) về phần mềm
Xem xét và lên kế hoạch về các trường hợp thử nghiệm với khách hàng và trưởng nhóm
Tiến hành các trường hợp kiểm thử trên AUT
Báo cáo tất cả những lỗi tìm thấy trên hệ thống phần mềm
Sau khi sửa lỗi, tester sẽ thực hiện các trường hợp thử nghiệm chấp nhận để xác định lỗi không xảy ra nữa
Manual Testing có những ưu và nhược điểm gì?
Manual Testing được các tester thực hiện hoàn toàn thủ công để rà soát lỗi tồn tại trong phần mềm. Mặc dù sở hữu rất nhiều ưu điểm vượt trội nhưng kỹ thuật này cũng tồn tại một số nhược điểm nhất định.
Ưu điểm
Manual Testing giúp tiết kiệm chi phí
Có được những phản hồi nhanh chóng, trực quan về giao diện thiết kế của phần mềm
Khi có thay đổi nhỏ sẽ giúp tiết kiệm thời gian cho việc kiểm tra phần mềm
Có nhiều cơ hội chạy thử nghiệm để tìm kiếm lỗi phức tạp, giúp tester nâng cao tay nghề
Nhược điểm
Cần số lượng lớn và đầu tư nhiều cho nguồn nhân lực
Tester mất khá nhiều thời gian và công sức để tìm kiếm lỗi
Độ tin cậy, tiện lợi của kỹ thuật Test Manual kém hơn so với Automation Test
Chỉ hữu ích khi các case kiểm thử chạy một hoặc hai lần, không lặp lại thường xuyên
Quá trình Manual Testing không được ghi lại, do đó không có tính tái sử dụng các trường hợp kiểm thử
Lợi ích và giới hạn của Test Manual
Test Manual có những lợi ích và giới hạn sau:
Lợi ích của Test Manual:
Hướng dẫn chi tiết: Test Manual cung cấp hướng dẫn chi tiết về quy trình kiểm thử, các bước kiểm tra cụ thể và kỳ vọng kết quả. Điều này giúp đảm bảo rằng các hoạt động kiểm thử được thực hiện đúng quy trình và không bỏ sót bất kỳ bước kiểm thử nào.
Tăng tính toàn vẹn và độ tin cậy: Test Manual đảm bảo rằng tất cả các khía cạnh của phần mềm được kiểm tra một cách toàn diện. Bằng cách theo dõi và thực hiện các bước kiểm thử theo Test Manual, độ tin cậy và tính toàn vẹn của quá trình kiểm thử được nâng cao.
Tiết kiệm thời gian và tài nguyên: Test Manual giúp giảm thiểu thời gian và công sức cần thiết để thiết kế và thực hiện quá trình kiểm thử. Bằng cách có một hướng dẫn rõ ràng, nhóm kiểm thử không cần phải tìm kiếm thông tin và quyết định từ đầu, mà có thể tuân thủ các hướng dẫn sẵn có.
Dễ dàng tái sử dụng: Test Manual có thể được sử dụng lại cho các phiên bản phần mềm tương tự hoặc các dự án mới. Điều này giúp tiết kiệm thời gian và công sức trong việc tạo ra hướng dẫn kiểm thử từ đầu mỗi khi có một dự án mới.
Giới hạn của Test Manual:
Hạn chế trong phạm vi: Thường Test Manual chỉ tập trung vào các kịch bản kiểm thử cụ thể và kỳ vọng kết quả đã biết trước. Điều này có thể dẫn đến việc bỏ sót những kịch bản kiểm thử quan trọng khác hoặc không đủ linh hoạt để đáp ứng các yêu cầu kiểm thử mới.
Cập nhật khó khăn: Nếu có sự thay đổi trong yêu cầu hoặc thiết kế của phần mềm, Test Manual có thể trở nên lỗi thời và không còn đáng tin cậy. Việc cập nhật và duy trì Test Manual là một quá trình công phu và đòi hỏi sự quản lý cẩn thận.
Không thể áp dụng cho kiểm thử tự động: Hạn chế trong việc áp dụng cho các kỹ thuật kiểm thử tự động. Đối với kiểm thử tự động, cần phải có các tài liệu và quy trình khác như Test Automation Framework hoặc Scripts.
Phụ thuộc vào người viết: Test Manual phụ thuộc vào người viết để cung cấp hướng dẫn chính xác và toàn diện. Nếu Test Manual không được viết một cách rõ ràng hoặc thiếu thông tin quan trọng, nó có thể gây nhầm lẫn và hiểu lầm cho nhóm kiểm thử.
Một Manual Testing cần làm những công việc gì?
Công việc chính của Manual Testing là kiểm tra xem phần mềm có đảm bảo chất lượng hay không. Cụ thể, Manual Testing sẽ tìm kiếm, phát hiện lỗi tồn tại trên phần mềm, sau đó thông báo cho lập trình viên fix lỗi trước khi bàn giao cho khách hàng.
Với những bạn mới vào nghề thì việc trau dồi kiến thức và kỹ năng để hoàn thành tốt công việc là vô cùng cần thiết. Nếu muốn trở thành một Manual Testing chuyên nghiệp, bạn cần:
Hiểu rõ tất cả kỹ thuật Test Manual cơ bản, xây dựng tư duy phân tích để nắm chắc mọi quy định quan đến kỹ thuật test và dễ dàng tìm kiếm lỗi.
Nâng cao trình độ ngoại ngữ nhất là tiếng Anh để thuận tiện hơn trong việc tìm kiếm tài liệu hướng dẫn của nước ngoài. Đây cũng là một trong những yếu tố giúp bạn “ghi điểm” với nhà tuyển dụng.
Muốn làm Manual Testing cần học những gì?
Nếu muốn trở thành một Manual Testing chuyên nghiệp, bạn cần trang bị cho mình những kiến thức chung và kiến thức chuyên ngành.
Kiến thức chung:
Kiến thức về sử dụng máy tính, cài đặt phần mềm, tin học và kiến thức cơ bản về lập trình bao gồm SQL, CSS, HTML,…
Các định nghĩa về test, thuật ngữ sử dụng trong test, quy trình test, quy trình phát triển phần mềm.
Hiểu rõ về những loại test phổ biến như Functional testing, Non-Functional testing, Structural testing, Change related testing.
Cần chủ động tìm kiếm và tham khảo những tài liệu liên quan đến kỹ thuật Test Manual.
Kiến thức chuyên ngành:
Create a Test Plan: Đây là thành phần quan trọng trong một Test Plan cơ bản.
Design Test case: Là cách tạo và viết cho một test case thông dụng, đảm bảo nó phù hợp với quy trình test của mỗi loại phần mềm khác nhau.
Test Design Techniques: Một Manual Testing cần hiểu rõ về kỹ thuật thiết kế kiểm thử. Kỹ thuật này bao gồm 2 dạng chính: Dynamic Testing (kiểm thử động) và Static Testing (kiểm thử tĩnh).
Test Report: Hiểu đơn giản, Test Report là bản tóm tắt trong đó có mục tiêu, những hoạt động và kết quả kiểm thử. Mục đích của Test Report là giúp những bộ phận liên quan đánh giá được chất lượng sản phẩm.
Coding: Ngoài những kiến thức chuyên ngành kể trên, bạn cần biết về một số ngôn ngữ lập trình nâng cao để có thể sửa được mọi lỗi kỹ thuật.
Kết luận: Kỹ thuật Test Manual
đóng vai trò quan trọng trong kiểm thử phần mềm. Kỹ thuật này đòi hỏi khá nhiều thời gian, sự tỉ mỉ, kiên trì, sáng tạo của mỗi tester. Tester cần suy nghĩ, hành động dưới vai trò của người dùng cuối để có thể trao đến tay khách hàng sản phẩm chất lượng, đúng yêu cầu và thời hạn.
Bài viết liên xem thêm:
Bài viết dưới đây của chúng tôi sẽ cung cấp cho bạn các kiến thức về Tester Manual, như Tester Manual là gì? Quy trình thực hiện Manual Tester? Các công cụ hỗ trợ Manual Tester? Xin mời các bạn theo dõi bài viết dưới đây để hiểu rõ về Test Manual hơn nhé!
Nội dung
Tester Manual là gì?
Hướng dẫn Manual Testing chi tiết cơ bản đến nâng cao
Các công cụ hỗ trợ Tester Manual
Tổng kết
Test Manual là gì?
Test Manual (hay còn gọi là “hướng dẫn kiểm thử”) là một tài liệu được tạo ra để hướng dẫn quá trình kiểm thử phần mềm. Nó bao gồm các hướng dẫn chi tiết về việc thực hiện các bước kiểm thử, bao gồm các bước chuẩn bị, quy trình, các bước kiểm tra cụ thể và kỳ vọng kết quả.
Test Manual có thể chứa thông tin về các kịch bản kiểm thử, dữ liệu mẫu, các bước kiểm tra, các kỹ thuật kiểm thử và tiêu chí đánh giá kết quả. Nó cung cấp cho nhóm kiểm thử một hướng dẫn rõ ràng và cấu trúc để thực hiện hoạt động kiểm thử, đảm bảo rằng các bước kiểm thử được thực hiện theo cách thức chính xác và liên tục.
Test Manual thường được sử dụng trong quy trình kiểm thử phần mềm để tất cả các khía cạnh của phần mềm được kiểm tra một cách toàn diện. Nó cũng có thể được sử dụng như một tài liệu tham khảo cho những người tham gia vào quá trình kiểm thử, bao gồm cả các nhà phát triển và nhà quản lý dự án.
Các tool hỗ trợ Manual Testing
Hiện nay, có rất nhiều tool có khả năng tối ưu hóa việc kiểm thử thủ công, giúp tiết kiệm thời gian, công sức của tester. Các tool hỗ trợ Manual Testing mà bạn có thể tham khảo gồm:
Manual Test là một phương pháp kiểm thử phần mềm được sử dụng để đảm bảo tính ổn định, chất lượng và độ tin cậy của sản phẩm. Phương pháp này được sử dụng để kiểm tra tính năng, chức năng, hiệu suất và độ tin cậy của phần mềm bằng cách thực hiện các bước kiểm thử bằng tay.
Các nhân viên kiểm thử sẽ thực hiện các bước kiểm thử theo các kịch bản kiểm thử được thiết kế trước. Các bước kiểm thử bao gồm nhập liệu, kiểm tra kết quả và đánh giá tính năng của phần mềm. Việc thực hiện Manual Test yêu cầu các nhân viên kiểm thử có kiến thức về quy trình kiểm thử, các kỹ năng phân tích, đánh giá và báo cáo kết quả kiểm thử.
Manual Test được sử dụng phổ biến trong các dự án phần mềm nhỏ hoặc đơn giản, hoặc trong các trường hợp khi các tính năng của phần mềm khó tự động hóa hoặc đòi hỏi sự đánh giá của con người. Ngoài ra, nó cũng được sử dụng để kiểm tra tính năng mới hoặc các tính năng cải tiến của phần mềm.
Tuy nhiên, Manual Test cũng có nhược điểm là tốn nhiều thời gian và công sức hơn so với Automation Test và có thể dẫn đến kết quả kiểm thử không đồng nhất nếu các nhân viên kiểm thử có quan điểm khác nhau. Mặt khác nó còn bị giới hạn bởi khả năng của con người, do đó không thể kiểm tra các tính năng phức tạp của phần mềm.
Để tăng hiệu quả kiểm thử, Manual Test có thể được kết hợp với các phương pháp kiểm thử tự động để tối ưu hóa quá trình kiểm thử. Việc kết hợp này sẽ giúp tăng tốc độ kiểm thử, giảm thiểu nhân lực và đảm bảo tính chính xác và đồng nhất trong quá trình kiểm thử.
Sự khác biệt giữa Manual Test và Automation Test
Một số yếu tố khác biệt chính
Sự khác biệt giữa Manual Test và Automation Test được thể hiện qua một số yếu tố sau:
Tốc độ kiểm thử: Automation Test thường nhanh hơn và hiệu quả hơn so với Manual Test.
Chi phí: Automation Test có chi phí đầu tư ban đầu cao, tuy nhiên, nó có thể tiết kiệm được chi phí lâu dài so với Manual Test.
Độ chính xác: Automation Test có độ chính xác cao hơn so với Manual Test, vì các kịch bản kiểm thử tự động đã được thiết lập trước và thực hiện theo cách đồng nhất.
Tính linh hoạt: Manual Test có tính linh hoạt cao hơn so với Automation Test, vì kiểm thử viên có thể tùy chỉnh và thay đổi các ca kiểm thử tùy theo nhu cầu trên nhiều phiên bản và môi trường khác nhau.
Yếu tố
Manual Test
Automation Test
Phạm vi ứng dụng
Dễ dàng kiểm thử các tính năng mới
Phù hợp cho các ứng dụng lớn và phức tạp
Thích hợp với các loại dự án nào
Phù hợp với các dự án nhỏ, đơn giản và có thời gian ngắn
Phù hợp với các dự án lớn, phức tạp và có thời gian dài
Thời gian thực hiện
Tốn nhiều thời gian và công sức hơn
Thực hiện nhanh hơn và được lặp đi lặp lại một cách dễ dàng
Độ chính xác và hiệu quả
Độ chính xác thấp hơn so với automation test và hiệu quả phụ thuộc vào kỹ năng của kiểm thử viên
Độ chính xác cao hơn và hiệu quả nhanh hơn so với manual test, và không phụ thuộc vào kỹ năng của kiểm thử viên
Chi phí
Chi phí thấp hơn so với automation test
Chi phí đầu tư ban đầu cao hơn, tuy nhiên sẽ tiết kiệm được chi phí lâu dài
Trường hợp nên chọn
Các trường hợp kiểm thử đơn giản
Các trường hợp kiểm thử phức tạp
Kỹ năng và chuyên môn cần có cho Manual Tester
Hiểu biết về quy trình kiểm thử và các phương pháp kiểm thử
Có kiến thức cơ bản về lập trình và kiến thức về hệ thống
Có khả năng phân tích, đánh giá và báo cáo kết quả kiểm thử
Có khả năng giao tiếp tốt để liên lạc với nhóm phát triển, khách hàng và các bộ phận liên quan khác
Có khả năng tập trung vào chi tiết và đảm bảo tính chính xác trong quá trình kiểm thử
Có khả năng làm việc độc lập và trong nhóm để đảm bảo tính hiệu quả của quá trình kiểm thử
Kỹ năng và chuyên môn cần có cho Automation Tester
Hiểu biết về các công cụ kiểm thử tự động và các ngôn ngữ lập trình như Java, Python, Ruby, C#,…
Có kỹ năng lập trình và làm việc với các công cụ kiểm thử tự động như Selenium WebDriver, Appium, Katalon Studio,…
Có khả năng phân tích, đánh giá và báo cáo kết quả kiểm thử
Có khả năng sử dụng các kỹ thuật kiểm thử tự động để tối ưu hóa quá trình kiểm thử
Có khả năng tìm hiểu và sử dụng các công nghệ mới để cải tiến quá trình kiểm thử tự động
Có khả năng làm việc độc lập và trong nhóm để đảm bảo tính hiệu quả của quá trình kiểm thử tự động
Kết luận
Manual testing là kiểm thử phần mềm trong đó các kiểm thử được thực hiện bởi QA
Automation testing người tester sẽ viết các kịch bản test bằng các tập lệnh và nhờ vào sự giúp đỡ của các tool tự động để thực hiện kiểm thử
Manual testing sẽ giúp có cái nhìn trực quan và chính xác về ứng dụng
Automation testing giúp tìm thấy nhiều lỗi hơn
Manual testing cho kết quả ít tin cậy hơn vì con người có thể mắc lỗi
Automation testing tiêu tốn chi phí cho các tool kiểm thử, làm tăng chi phí của dự án
Manual testing tiêu tốn thời gian và nguồn nhân lực
Automation testing nhanh hơn và hiệu quả hơn so với manual testing
Kỹ thuật Test Manual giúp tester phát hiện lỗi để kịp thời khắc phục, đảm bảo mang đến cho khách hàng sản phẩm chất lượng, đúng tiến độ. Bài viết này sẽ giúp bạn hiểu rõ hơn về cách thực hiện và ưu nhược điểm của kỹ thuật Test Manual.
Tham khảo: Khóa học Tester tại Hà Nội của NIIT
Tester Manual là gì?
Tester Manual là 1 phương thức kiểm thử phần mềm, công việc kiểm thử được thực hiện hoàn toàn thủ công bởi 1 Tester mà không thông qua bất kỳ công cụ hỗ trợ nào. Tester Manual chính là người sử dụng sản phẩm thử trước khi trao sản phẩm hoàn thiện cho khách hàng.
Tester Manual sẽ thực hiện kiểm thử để kiểm tra các lỗi lớn nhỏ trước khi hoàn thiện một sản phẩm công nghệ. Vì sản phẩm cuối cùng cũng được trao đến tay người dùng, cho nên việc dùng Tester Manual để kiểm thử giống như cho người dùng thử nghiệm trước. Đó là điểm quan trọng làm nên sự khác biệt giữa Tester Manual và Tester Automation.
Ưu điểm của Tester Manual
Tester Manual không yêu cầu Tester cần phải biết kiến thức lập trình: Vì dù có biết kiến thức lập trình hay không thì Tester vẫn có thể làm việc bình thường.
Nếu mắc phải những lỗi nhỏ thư thay đổi về ID, class sẽ không cản trở quá trình kiểm thử, các Tester sẽ không mất quá nhiều thời gian để sửa lỗi.
Tester Manual sẽ nhanh chóng có được phản hồi chính xác, trực diện và khách quan nhất về các lỗi của chương trình.
Các Tester sẽ thực hiện kiểm thử thủ công nhiều lần, từ đó mà học hỏi được nhiều điều từ các lỗi, nâng cao trình độ bản thân.
Tốn ít chi phí cho việc dùng các công cụ tự động hơn so với Tester Automation.
Nhược điểm của Tester Manual
Tốn nhân lực khi thực hiện kiểm thử nhiều.
Tốn thời gian và công sức của Tester do tất cả đều thực hiện thủ công.
Đối với các lỗi khó thì Tester Manual khó có thể thực hiện thủ công.
Test hoàn toàn thủ công nên có lỗi sai, không đáng tin cậy bằng Automation Testing.
Hướng dẫn Manual Testing chi tiết cơ bản đến nâng cao
Nếu đã biết Manual Tester là gì, sau đây chúng tôi sẽ cung cấp cho bạn chi tiết thêm về quy trình của Manual Testing với các bước cụ thể như sau:
Bước 1: Tìm hiểu yêu cầu của dự án phần mềm
Nếu muốn thực hiện kiểm thử đạt hiệu quả cao, thì bước đầu tiên mà các Tester phải làm là hiểu rõ yêu cầu phần mềm đặt ra. Bên cạnh đó, hiểu mục đích của sản phầm, yêu cầu khách hàng từ đó mới vạch ra kế hoạch chuẩn bị cho bước thực hiện kiểm thử.
Nhờ nắm rõ các yêu cầu này mà Tester mưới có thể hoàn thành tốt công việc của mình. Vì mục đích cuối cùng của kiểm thử là hạn chế tối đa các lỗi xảy ra trước khi trao sản phẩm tới khách hàng.
Bước 2: Tạo Test case
Ở bước này, Tester sẽ thực hiện phác thảo các trường hợp kiểm thử từ những yêu cầu trong tài liệu và những lỗi đã phát hiện thông qua bước tìm hiểu bước 1.
Viết Test case một cách chi tiết sẽ rất có ích cho Tester trong quá trình thực hiện công việc, cũng như khi muốn xem lại các lỗi, cách xử lý mà mình đã thực hiện nếu cần.
Bước 3: Thực hiện kiểm thử
Đây là bước quan trọng nhất trong quy trình Manual Testing, Tester sẽ thực hiện các kiểm thử các lỗi đã tìm được trong bước phác thảo và hoàn thiện chúng.
Khi thực hiện kiểm thử, bạn nên ghi chú lại những lỗi đã hoàn thành, những lỗi chưa hoàn thành và những lỗi cần thử lại, để tiện cho việc sửa lại chúng và viết báo cáo kết quả.
Bước 4: Kiểm thử sâu hơn
Khi kiểm thử xong, các Tester sẽ nghiên cứu sâu hơn để tìm ra những bug khác, thăm dò các lỗi không có trong kế hoạch kiểm thử. Mặc dù thực hiện xong bước 3 đã xem như là hoàn thành công việc, nhưng bước này sẽ giúp cho các Tester nâng cao tay nghề.
Bên cạnh đó, Tester cũng sẽ xem lại các lỗi mà mình chưa hoàn thành hoặc chưa giải quyết được để đưa ra phương án xử lý phù hợp.
Bước 5: Báo cáo lỗi
Trong quá trình thực hiện các bước trên, Tester cũng cần ghi chép lại chi tiết và tỉ mỉ quá trình làm việc của mình. Việc ghi chép cụ thể này sẽ có ích không những cho Tester về sau mà còn cho các thành viên trong nhóm khi thắc mắc cách giải quyết bug của bạn.
Bước 6: Báo cáo về kết quả Test
Khi hoàn thành tất cả các bước trên, Tester sẽ tổng hợp lại tất cả để báo cáo lên quản lý/cấp trên của mình để báo cáo là đã hoàn thành công việc.
Ngoài ra, việc báo cáo về kết quả test còn giúp Tester xây dựng được kế hoạch hợp lý để triển khai trong những lần làm việc tiếp theo.
DOWNLOAD MIỄN PHÍ TRỌN BỘ 20+ TÀI LIỆU HỌC TESTER CƠ BẢN – NÂNG CAO
Manual Testing có những ưu và nhược điểm gì?
Để hiểu rõ hơn về MT ngoài định nghĩa Manual Testing là gì thì bạn đọc hãy theo dõi ưu điểm và nhược điểm để hiểu rõ hơn về nó. Nội dung như sau: Bạn đọc tham khảo thêm: vận chuyển hàng nhật việt
Về ưu điểm
Hầu hết, các tester sẽ dễ dàng hơn trong việc test giao diện giúp mang lại những phản hồi nhanh chóng và trực quan nhất về giao diện ứng dụng của phần mềm cần test.vận chuyển hàng không là gì
Nếu như chương trình có thay đổi nhỏ, thì Manual Testing sẽ không phải mất quá nhiều thời gian cho việc kiểm tra đối với những trường hợp kiểm thử.
Các tester sẽ có nhiều hơn cơ hội cho việc khám phá kiếm thử. Từ đó, hiểu thêm về những lỗi phát sinh khó phát hiện để có thể nâng cao được tay nghề cho tester.giá cước vận chuyển hàng không quốc tế
Về nhược điểm
MT sẽ tiêu tốn nhiều thời gian cũng như công sức của tester hơn trong việc phát hiện ra các lỗi bug.
Kết quả tìm thấy thường ít được tin cậy hơn bởi có thể do những sai sót của con người khi thực hiện.
Đối với những task công việc lớn có dạng như: performance testing và stress testing; thì công việc đòi hỏi phải có những tools thực sự chuyên nghiệp để có thể hỗ trợ kỹ thuật manual testing nên việc thực hiện sẽ rất khó.giá cước vận chuyển hàng không nội địa
Việc sử dụng Manual Testing sẽ giúp bạn phát hiện lỗi thường ít hơn so với kỹ thuật tự động test.
Chi phí dành cho dự án có thể phải tăng lên do những đòi hỏi trong việc phải thuê nguồn nhân lực MT để tiến hành kiểm tra.
Quá trình sử dụng tools tự động để test sẽ cho bạn kết quả nhanh hơn cũng như chính xác hơn so với MT.
Nhược điểm của MT
Điểm khác nhau giữa Manual Testing và Automation Testing
Parameter
Automation Testing
Manual Testing
Definition
Automation testing sử dụng các tool để thực hiện các trường hợp kiểm thử
Thực hiện kiểm thử hoàn toàn thủ công không có sự trợ giúp của bất kỳ công cụ tự động nào, được thực hiện bời tester
Processing time
Thời gian kiểm thử rút ngắn hơn so với manual testing
Manual testing tốn nhiều thời gian và nguồn nhân lực
Exploratory Testing
Không cho phép kiểm thử khám phá
Có thể kiểm thử khám phá trong manual testing
Reliability
Kết quả kiểm thử đáng tin cậy vì nó được thực hiện bằng các tool và các kịch bản
Kết quả kiểm thử không đáng tin cậy vì có khả năng xảy ra lỗi của con người
UI change
Chỉ là thay đổi nhỏ trong giao diện AUT nhưng các kịch bản kiểm thử tự động cần phải sửa đổi để hoạt động đúng như mong đợi
Những thay đổi nhỏ thư thay đổi về id, class sẽ không cản trở quá trình kiểm thử
Investment
Cần phải đầu tư cho các công cụ kiểm thử
Cần đầu tư về nguồn nhân lực
Test Report Visibility
Tất cả các bên liên quan có thể đăng nhập vào hệ thống xem kết quả đã kiểm thử
Kết quả được lưu lại trong excel hoặc word
Performance Testing
Được thực hiện trong kiểm thử Load testing, stress testing
Không khả thi trong kiểm thử Load testing, stress testing
Parallel Execution
Có thể thực hiện song song trên cấc nền tảng vận hành khác nhau và giảm thời gian thực hiện kiểm thử
Kiểm thử song song trên các nền tảng khác nhau sẽ phải tăng nguồn nhân lực
Programming knowledge
Yêu cầu phải có kiến thức lập trình
Không cần có kiến thức lập trình vẫn có thể thực hiện
Ideal approach
Automation testing rất hữu ích khi thường xuyên thực hiện chạy lại một kịch bản nhiều nhiều lần
Manual testing hữu ích khi chạy bộ test case một hoặc hai lần
Các công cụ hỗ trợ Tester Manual
Để cải thiện hiệu quả của Manual Testing và tiết kiệm thời gian của Tester, nhiều công cụ hỗ trợ hữu ích đã xuất hiện, chẳng hạn như:
Có rất nhiều công cụ để hỗ trợ cho các Tester quản lý và thực hiện Manual Testing một cách nhanh chóng. Tuy nhiên, các Tester muốn công việc của mình đạt hiệu quả thì phải hiểu rõ yêu cầu của phần mềm và thực hiện chúng cách tỉ mỉ, chu đáo.
Đọc thêm: Automation Tester là gì? Học Automation liệu có khó không?
Điểm khác nhau giữa Manual testing và Automation testing
Manual testing
Automation testing
Manual testing vì là kiểm thử hoàn toàn do hành động của con người nên dễ bị gặp lỗi do con người gây ra. Vì thế mà độ tin cậy và độ chính xác kiểm thử thấp
Automation testing chạy với sự trợ giúp của các công cụ, tập lệnh và phần mềm nên có độ tin cậy cao hơn
Chi phí phụ thuộc vào nguồn nhân lực được sử dụng để kiểm thử
Chi phí phụ thuộc vào các công cụ kiểm tra được triển khai để thực hiện kiểm thử.
Thời gian cần thiết để kiểm thử thủ công nhiều hơn so với nguồn nhân lực cần để thực hiện nó
Thời gian cần thiết để kiểm thử tự động ít hơn các công cụ phần mềm cần để thực hiện các kiểm thử.
Manual testing phù hợp khi các test case được chạy một hoặc hai lần. Do đó không có sự lặp lại thường xuyên các test case
Automation testing phù hợp khi các test case cần phải chạy liên tục trong một thời gian dài.
Manual testing giúp tìm ra sự thân thiện của ứng dụng đối với người dùng. Vì con người phải quan sát để tìm ra những điểm bất ổn của ứng dụng. Do đó Manual testing giúp cải thiện trải nghiệm của người dùng
Automation testing không đảm bảo sự thân thiện của ứng dụng đối với người dùng. Vì không có sự quan sát của con người, không có đảm bảo về trải nghiệm khách hàng.
Tổng kết
Trên đây là những điều mà chúng tôi cung cấp thêm ngoài câu hỏi “Manual Tester là gì?”. Mong rằng những chia sẻ này hữu ích với các bạn. Chúc các bạn thành công và lựa chọn được hướng đi phù hợp với bản thân trong nghề Tester!
Manual Testing Là Gì ? Và Học Gì Để Trở Thành Một Manual Test Chuyên Nghiệp?
Bạn đang tìm kiếm định nghĩa Manual Testing là gì? Bạn đang phân vân không viết Manual Testing (MT) có những ưu điểm và nhược điểm nào? Hoặc đang phân vân giữa điểm khác nhau cơ bản của Manual Testing và Automation Testing. Hãy cùng nhau tìm hiểu những vấn đề trên qua bài viết sau đây.
Bạn đang tìm kiếm định nghĩa Manual Testing là gì? Bạn đang phân vân không viết Manual Testing (MT) có những ưu điểm và nhược điểm nào? Hoặc đang phân vân giữa điểm khác nhau cơ bản của Manual Testing và Automation Testing. Hãy cùng nhau tìm hiểu những vấn đề trên qua bài viết sau đây.
Muốn làm Manual Testing cần học những gì?
Ở phần cuối của bài viết chúng tôi sẽ giới thiệu cho bạn những điều cần phải hỏi để trở thành một manual tester chuyên nghiệp trong tương lai. Bạn đừng quên đọc thật kỹ phần này nhé!
Nếu muốn trở thành một MT chuyên nghiệp thì đòi hỏi bạn phải xác định được hướng đi của bản thân sao cho chính xác nhất như: nên đầu tư cái nào, học hỏi cái nào, rèn luyện kỹ năng nào, thực hành như thế nào,… Những điều này sẽ giúp chính bản thân bạn quyết tâm để thắp sáng ngọn lửa đam mê cũng như quyết tâm hấp thu mọi kiến thức.
Hãy học hỏi thật nhiều để trở thành một MT chuyên nghiệp
Dưới đây là các mặt kiến thức bạn cần trang bị khi muốn làm Manual Testing như sau:
Kiến thức chung
Thành thạo các kiến thức về máy tính, cài đặt phần mềm, sử dụng máy tính, tin học,…
Hiểu rõ các kiến thức căn bản về lập trình như: SQL, HTML, CSS..
Nắm rõ các định nghĩa về test, những thuật ngữ thường sử dụng trong lĩnh vực test phần mềm, quá trình phát triển phần mềm và quy trình hoạt động của test.
Thường xuyên tham khảo những tài liệu liên quan khác như: What is Software Testing?, Software Development life cycle, Quality Assurance vs. Quality control, Validation vs Verification…
Hiểu rõ hết những loại test phổ biến như: Functional testing, Structural testing, Non-functional testing, Change related testing.
Những kiến thức riêng cần nắm vững
Create a Test Plan: Đây là thành phần cần sở hữu trong một test plan cơ bản và cách viết test plan thường phù hợp và chính xác nhất.
Design Test case: Hiểu rõ về cách tạo ra và viết cho một testcase thông dụng sao cho phù hợp với quy trình test của những loại phần mềm khác nhau.
Test Design Techniques: Nắm rõ kỹ thuật thiết kế một testcase để cho việc testcase được hiệu quả, tối ưu và bao phủ được requirement.
Test reporting, Daily status reports: Thông thường cách viết report sẽ giúp bạn báo cáo kết quả test cho chính mình cũng như dễ dàng hoàn thiện được báo cáo khi kiểm tra lỗi kỹ thuật.
Coding: SQL, HTML, CSS: Bạn cần thành thạo ít nhất một trong những ngôn ngữ lập trình nâng cao để có thể xử lý được mọi lỗi kỹ thuật.vận chuyển hàng không nội địa
Hy vọng rằng, với những thông tin về MT mà chúng tôi chia sẻ bạn đã biết được Manual Testing là gì; cũng như nắm được cách để trở thành một MT chuyên nghiệp. Chúc bạn sớm thành công với hoài bão và ước mơ của mình!
ITNavi – Nền tảng kết nối việc làm IT
Nguồn: Manual Testing Là Gì ? Và Học Gì Để Trở Thành Một Manual Test Chuyên Nghiệp?
Đối với bất kỳ dự án sản xuất phần mềm nào việc kiểm thử đều đóng một vai trò vô cùng quan trọng. Trong đó, Test Manual là loại kiểm thử được sử dụng nhiều nhất. Vậy Test Manual là gì? Những lợi ích và cách thực hiện nó ra sao? Hãy cùng Stringee tìm hiểu trong bài viết dưới đây nhé!
Ưu, nhược điểm Manual Testing
Ưu điểm
Dễ dàng cho việc test giao diện, người tester sẽ có phản hồi nhanh và trực quan về giao diện ứng dụng
Mất ít chi phí cho các tool tự động và quy trình
Khi có thay đổi nhỏ manual testing manual testing không bị mất nhiều thời gian để thay đổi các trường hợp kiểm thử
Nhược điểm
Kết quả kiểm thử ít tin cậy hơn vì có thể sai xót do yếu tố con người
Qúa trình thực hiện các ca kiểm thử không được ghi lại, do vậy nó không có tính tái sử dụng
Với một số task khó thực hiện thủ công như performance testing và stress testing thì manual testing rất khó để thực hiện
Các phương pháp và kỹ thuật Test Manual từ A-Z
4.1 Hiểu rõ các yêu cầu
Để thực hiện kiểm thử đạt hiệu quả cao, tester cần hiểu rõ các yêu cầu của phần mềm, cách mà phần mềm đó phải hoạt động. Phần tài liệu ghi chép toàn bộ thông tin liên quan đến sản phẩm đang được kiểm thử được gọi là Requirement, hoặc đôi khi được trình bày dưới dạng User story.
Những tài liệu này giúp tester hiểu được mục đích của sản phẩm, các phạm vi cần phải kiểm thử, các công việc cần phải làm, và những định nghĩa về defect.
Việc nắm rõ những thông tin này trước khi chuẩn bị kiểm thử là rất cần thiết, bởi mục tiêu của mọi hoạt động kiểm thử là giúp sản phẩm có ít lỗi nhất có thể.
Trong một số ít trường hợp mà tester không tiếp cận được với requirement hay user story, bạn sẽ cần phải trở nên linh hoạt và sáng tạo hơn một chút để hiểu cách hoạt động của sản phẩm thông qua các nguồn khác nhau.
4.2 Viết test case
Sau khi đọc và hiểu rõ các requirement, ta sẽ đi đến bước tạo test case.
Test case đóng vai trò là người dẫn đường cho các tester, đưa ra những bước chi tiết, hướng dẫn thực hiện kiểm thử các tính năng và bối cảnh khác nhau của phần mềm đó.
Viết một test case chi tiết là rất cần thiết bởi nó sẽ giúp công việc kiểm thử trở nên mượt mà hơn và đảm bảo bao quát được rộng nhất. Test case cũng cần phải đủ chi tiết để dễ dàng thực hiện lại phần kiểm thử nếu cần thiết. Điều này giúp những tester tham gia vào sau có thể nhanh chóng bắt kịp công việc, dễ dàng thực hiện kiểm thử hoặc chạy lại các phần kiểm thử cũ mà không cần quá nhiều thời gian hỏi lại.
Có nhiều tester vẫn sử dụng Excel để làm test case, tuy nhiên hiện nay có nhiều phần mềm quản lý test case như TestLodge có thể giúp sắp xếp test case hiệu quả hơn, từ đó có thể tăng năng suất khi thực hiện kiểm thử.
>>> Xem thêm bài viết về chủ đề ngôn ngữ lập trình:
– Black box testing là gì? Các phương pháp được sử dụng trong Black box testing- End-to-end testing là gì? Các bước thực hiện end-to-end testing- Load testing là gì? Các công cụ hỗ trợ load testing- Stress testing là gì? Phân biệt stress testing và load testing- Performance testing là gì? Quy trình các bước thực hiện performance testing
4.3 Thực hiện kiểm thử
Khi đã có test case và chuẩn bị xong môi trường test, ta sẽ bắt tay vào thực hiện kiểm thử.
Mỗi phần kiểm thử được thực hiện xong phải có ghi chú đã vượt qua (passed), thất bại (failed) hay bỏ qua (skipped).
Khi thực hiện kiểm thử thủ công, hãy nhớ ghi chép lại những gì đã làm cho việc kiểm thử thất bại để có thể dễ dàng tái hiện và lên kế hoạch xử lý chúng trong tương lai.
4.4 Điều tra sâu hơn
Không thể phủ nhận lợi ích của việc bám sát một test case chi tiết để thực hiện kiểm thử. Tuy nhiên trong vài trường hợp, thực hiện xen kẽ kiểm thử thăm dò (exploratory testing) có thể giúp khám phá ra những lợi ích to lớn mà trước đây chúng ta chưa phát hiện được.
Kiểm thử thăm dò cho phép các tester hoạt động không theo kịch bản cho sẵn, mà phụ thuộc hoàn toàn vào trí tưởng tượng của người đó. “Nghịch ngợm” một chút có thể giúp tester khám phá những phạm vi mới để bổ sung vào các giai đoạn kiểm thử về sau, tìm ra gợi ý để điều tra các phần kiểm thử thất bại, và bổ sung dữ liệu khi test case chưa bao quát được 100%.
4.5 Viết Báo cáo bug
Cùng với việc kiểm thử, tester còn có nhiệm vụ ghi chép lại chi tiết về các lỗi đã tìm được trong quá trình kiểm thử. Ghi chép một cách chi tiết thông tin về lỗi sẽ có ích rất nhiều cho đội phát triển về sau.
Hãy chuẩn bị sẵn bằng cách viết một báo cáo lỗi thật chi tiết để giúp team và chính bạn, đồng thời có thể tiết kiệm được rất nhiều thời gian nếu bạn phải giải trình về những lỗi bạn tìm được.
Báo cáo bug cần phải được đặt tên dễ nhận diện để giúp tìm kiếm dễ dàng hơn về sau.
Nội dung của báo cáo cần có chi tiết các bước để tái hiện lỗi (thường là các bước trong test case), kết quả trả về mong muốn, và kết quả trả về trên thực tế. Ngoài ra, cần đính kèm những tài liệu nhằm giúp team hiểu rõ vấn đề hơn như: ảnh chụp màn hình, video quay lại các bước thực hiện, hoặc các file trích xuất,…
4.6 Báo cáo về kết quả test
Sau khi thực hiện toàn bộ công việc test, chúng ta sẽ cần nhìn lại một cách tổng quan về kết quả của quá trình. Ví dụ như: Đã triển khai bao nhiêu test case? Bao nhiêu testcase đã thất bại? Bao nhiêu testcase đã bị bỏ qua?
Có một bản báo cáo tổng thể sẽ giúp chúng ta nhìn rõ được những con số này, từ đó có kế hoạch hợp lý để triển khai tiếp các công việc trong tương lai, ví dụ như có phải thực hiện lại test case nào không,…
Một Manual Testing cần làm những công việc gì?
Theo định nghĩa Manual Testing là gì ở phía trên thì công việc của một MT là kiểm tra cũng như đảm bảo chất lượng của phần mềm. Từ đó, để phát hiện nhanh chóng hơn các lỗi còn tồn tại trên phần mềm rồi kịp thời báo lại cho bộ phận kỹ thuật để được fix lỗi trước khi giao sản phẩm cho khách hàng. Bạn đọc tham khảo thêm: giá cước vận chuyển hàng không quốc tế
Chính vì vậy, với những MT khi mới bắt đầu vào nghề thì cần trau dồi được mọi kỹ năng cũng như kiến thức cơ bản cho việc nắm bắt để thực hiện tốt công việc của mình. Dưới đây là một số vấn đề bạn cần chuẩn bị như sau:
Hiểu rõ những kỹ thuật test manual cơ bản, cần xây dựng tư duy phân tích để tìm được ra lỗi tốt cũng như nắm vững mọi quy định liên quan đến kỹ thuật test.
Phải nâng cao trình độ đọc hiểu tiếng anh để quá trình tìm hiểu các tài liệu hướng dẫn của nước ngoài được dễ dàng hơn. Đây cũng là một trong những yếu tố bạn cần lưu ý để có thể ghi điểm với nhà tuyển dụng.
Vậy khi nào thì sử dụng Maunal testing và khi nào thì sử dụng Automation testing?
4.Khi nào thì sử dụng Manual testing
Manual testing là phù hợp nhất đối với:
• Exploratory Testing: Đây là loại kiểm thử đòi hỏi phải thử nghiệm của kiến thức, kinh nghiệm, phân tích / logic kỹ năng, sáng tạo và trực giác. Xét nghiệm này được đặc trưng bởi các tài liệu ở đây kém bằng văn bản kỹ thuật, hoặc một thời gian ngắn để thực hiện. Chúng ta cần những kỹ năng của con người để thực hiện quá trình kiểm thử trong kịch bản này.
• Usability Testing: Đây là một lĩnh vực mà bạn cần để đo độ thân thiện, hiệu quả, hoặc thuận tiện phần mềm hoặc sản phẩm cho người dùng cuối. Ở đây, quan sát con người là yếu tố quan trọng nhất, do đó, một phương pháp thủ công là một lợi thế.
• Ad-hoc Testing: Trong kịch bản này, không có phương pháp cụ thể. Nó là một phương pháp hoàn toàn không có kế hoạch kiểm thử nơi sự hiểu biết và cái nhìn sâu sắc của các thử nghiệm là yếu tố quan trọng duy nhất.
4.Khi nào thì sử dụng Automation testing
Automation testing là phù hợp nhất đối với:
• Regression Testing: automation testing là phù hợp vì các thay đổi mã thường xuyên và khả năng chạy các hồi quy một cách kịp thời.
• Load Testing: automation testing cũng là cách tốt nhất để hoàn thành các thử 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.
Khi phát triển phần mềm, việc thực hiện kiểm thử là rất quan trọng và bắt buộc để tạo ra một phầm mềm tốt. Vì thế, khi đã có kiến thức về kiểm thử thì việc lựa chọn loại hình kiểm thử phù hợp với sản phẩm là điều cần thiết, dù người thực hiện kiểm thử là ai, chỉ cần là người tham gia vào quá trình phát triển phần mềm thì đều cần phải lưu tâm. Mỗi loại hình kiểm thử đều có điểm mạnh và điểm yếu riêng. Hiện tại hầu như tất cả các tổ chức, công ty phát triển phần mềm đều lựa chọn kiểm thử thủ công cho việc kiểm thử phần mềm của họ. Tuy nhiên các công cụ kiểm thử tự động cũng có những điểm mạnh nhất định mà kiểm thử thủ công không có, nên cần xem xét hoàn cảnh để có thể áp dụng kiểm thử tự động cho quá trình kiểm thử phần mềm.
Để 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.
Manual Test là gì và sự khác biệt so với Automation Test
Manual Test là quá trình kiểm thử phần mềm được thực hiện bằng tay, trong đó kiểm thử viên thủ công tạo ra các ca kiểm thử, thực hiện các bước kiểm thử và đánh giá kết quả.
Automation Test là quá trình kiểm thử phần mềm được thực hiện tự động thông qua việc sử dụng các công cụ kiểm thử tự động, trong đó các ca kiểm thử được thiết lập trước và thực hiện bằng các kịch bản tự động. Trong bài viết này chúng ta sẽ cùng tìm hiểu về sự khác biệt giữa hai loại kiểm thử này.
Nội Dung Bài Viết
Ưu, nhược điểm Automation Testing
Ưu điểm
Sử dụng tool tự động giúp tìm kiếm được nhiều lỗi hơn
Automation testing nhanh và hiệu quả
Qúa trình kiểm thử được ghi lại, điều đó giúp chạy lại kịch bản kiểm thử nhiều lần và thực hiện trên nhiều nền tảng khác nhau
Automation testing được thực hiện bằng các công cụ phầm mềm, do đó nó hoạt động không mệt mỏi không giống như người kiểm thử tester
Automation testing năng suất và chính xác
Phạm vi kiểm thử rộng vì kiểm tra tự động không quên kiểm tra ngay cả đơn vị nhỏ nhất
Nhược điểm
Rất khó có cái nhìn đúng và trực quan về giao diện người dùng như màu sắc, font chữ, vị trí, kích thước các button nếu như không có yếu tố con người
Chi phí cho các tool kiểm thử có thể tốn kém, có thể làm tăng chi phí trong khâu kiểm thử của dự án
Nếu có một thay đổi nhỏ cũng sẽ mất thời gian để update kịch bản kiểm thử
Tầm quan trọng của Manual Test trong kiểm thử phần mềm
Manual Test là một phần quan trọng trong quá trình kiểm thử phần mềm. Dù cho có sự phát triển của các công cụ kiểm thử tự động, nó vẫn đóng vai trò quan trọng trong các trường hợp sau:
Kiểm thử tính năng mới: Khi phát triển tính năng mới hoặc cải tiến tính năng của phần mềm, Manual Test là phương pháp hiệu quả để kiểm tra tính năng này.
Kiểm thử tương tác người dùng: Phương pháp này giúp đảm bảo tính tương tác người dùng của phần mềm, bao gồm khả năng sử dụng, trải nghiệm người dùng và giao diện người dùng.
Kiểm thử lỗi phức tạp: Đây là phương pháp để đánh giá chất lượng của phần mềm trong các trường hợp phát hiện lỗi phức tạp mà khó tự động hóa được.
Kiểm thử tính tương thích: Manual Test cũng được sử dụng để kiểm tra tính tương thích của phần mềm với các hệ thống khác và các phiên bản khác nhau của phần mềm.
Các bước thực hiện Manual Testing
Các bước thực hiện Manual Testing bao gồm:
Phân tích yêu cầu: Trong bước này, các nhân viên kiểm thử cần đọc và hiểu yêu cầu của khách hàng, tài liệu phân tích thiết kế và tài liệu phát triển để hiểu rõ các tính năng và chức năng của phần mềm.
Thiết kế kế hoạch kiểm thử: Các nhân viên kiểm thử cần thiết kế kế hoạch kiểm thử bao gồm các bước kiểm thử, các ca kiểm thử, các kịch bản kiểm thử và các tiêu chí đánh giá kết quả kiểm thử.
Chuẩn bị môi trường kiểm thử: Trong bước này, các nhân viên kiểm thử sẽ chuẩn bị môi trường kiểm thử bao gồm phần mềm, dữ liệu kiểm thử và các tài nguyên cần thiết để thực hiện kiểm thử.
Thực hiện kiểm thử: Các nhân viên kiểm thử sẽ thực hiện các bước kiểm thử bằng tay theo kế hoạch kiểm thử được thiết kế trước đó. Các bước này bao gồm nhập liệu, kiểm tra kết quả và đánh giá tính năng của phần mềm.
Ghi lại kết quả kiểm thử: Các nhân viên kiểm thử cần ghi lại kết quả kiểm thử, bao gồm các lỗi phát hiện được, các tính năng hoạt động đúng và các vấn đề khác liên quan đến phần mềm.
Báo cáo kết quả kiểm thử: Cuối cùng, các nhân viên kiểm thử cần báo cáo kết quả kiểm thử cho nhóm phát triển, bao gồm các lỗi phát hiện được, các tính năng hoạt động đúng và các vấn đề khác liên quan đến phần mềm.
Các tool hỗ trợ Manual Testing
Có nhiều công cụ hỗ trợ kiểm thử thủ công (Manual Testing) có sẵn để giúp nhóm kiểm thử thực hiện các hoạt động kiểm thử một cách hiệu quả. Dưới đây là một số công cụ phổ biến được sử dụng trong kiểm thử thủ công:
TestRail: Là một công cụ quản lý kiểm thử và theo dõi tiến độ kiểm thử. Nó cho phép bạn tạo và quản lý kế hoạch kiểm thử, tạo các bộ kiểm thử, ghi lại kết quả kiểm thử và tạo báo cáo tiến độ.
JIRA: JIRA là một công cụ quản lý dự án linh hoạt và mạnh mẽ. Nó cung cấp các tính năng để theo dõi và quản lý công việc kiểm thử, ghi lại lỗi và tạo báo cáo.
Microsoft Excel hoặc Google Sheets: Các công cụ bảng tính như Excel hoặc Google Sheets có thể được sử dụng để tạo và quản lý danh sách kịch bản kiểm thử, ghi lại kết quả kiểm thử và theo dõi tiến độ kiểm thử.
Bug tracking tools: Các công cụ theo dõi lỗi như Bugzilla, Redmine, và MantisBT giúp ghi lại và theo dõi các lỗi được phát hiện trong quá trình kiểm thử.
Capture and annotation tools: Công cụ chụp màn hình và chú thích như Snagit, Greenshot hoặc Nimbus Capture giúp ghi lại các hình ảnh màn hình và thêm chú thích vào hình ảnh để mô tả các vấn đề và sự cố.
Documentation tools: Công cụ tạo tài liệu như Microsoft Word hoặc Google Docs có thể được sử dụng để tạo và quản lý tài liệu hướng dẫn kiểm thử, hướng dẫn sử dụng và báo cáo kết quả kiểm thử.
Collaboration tools: Công cụ hợp tác như Microsoft Teams, Slack hoặc Trello giúp các thành viên trong nhóm kiểm thử liên lạc, chia sẻ thông tin và cập nhật tiến độ kiểm thử.
Browser Developer Tools: Các công cụ nhà phát triển trình duyệt như Chrome DevTools, Firefox Developer Tools cung cấp các tính năng hữu ích như kiểm tra các yêu cầu mạng, xem thông tin về phần tử HTML và CSS, gỡ lỗi JavaScript và kiểm tra hiệu suất trang web.
Automation Testing là gì?
Automation testing là phương pháp kiểm thử tự động. Người tester sẽ phải viết các kịch bản kiểm thử sau đó sử dụng các tool hỗ trợ để thực hiện kiểm thử, phương pháp này sẽ giúp việc kiểm thử hiệu quả và tốn ít thời gian hơn. Automation testing giúp chạy các kịch bản kiểm thử lặp lại nhiều lần và các task kiểm thử khác khó thực hiện bằng tay như performance testing và stress testing.
Manual testing là gì?
Manual testing 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 đó còn được gọi là Tester.
Tester thực hiện manual testing đảm bảo rằng một phần mềm/ứng dụng hoạt động bình thường bằng cách tuân theo các điều kiện được viết trong testcase. Tester đánh giá thiết kế, chức năng và hiệu suất của ứng dụng bằng cách click vào các phần khác nhau của ứng dụng/hệ thống đó.
Ví dụ: Để kiểm thử một chức năng thêm vào giỏ hàng của một trang web thương mại điện tử, tester phải kiểm tra bằng cách thực hiện các thao tác cơ bản như một người dùng cuối của hệ thống, sau khi chọn được món hàng muốn mua trên trang web đó thì sẽ phải thao tác đối với nút nào để đưa được sản phẩm đó vào giỏ hàng. Phân tích kết quả nhận được sau khi thao tác với kết quả mong muốn để đưa ra kết luận xem chức năng đó của hệ thống có đang hoạt động đúng hay không.
Các loại Manual Testing
Mục đích của Manual Testing là đảm bảo phần mềm hoạt động đúng với yêu cầu đặc tả. Hơn nữa, Manual Testing giúp phát hiện lỗi, kịp thời khắc phục để có được sự hài lòng và niềm tin của khách hàng. Manual Testing được chia thành 6 loại sau:
Unit Testing
System Testing
White Box Testing
Black Box Testing
Acceptance Testing
Integration Testing
Định nghĩa Manual Testing là gì?
Manual Testing là một trong những công việc theo dạng kiểm thử phần mềm, hoặc là một chương trình được thực hiện bằng tay bởi các tester mà không thông qua bất kỳ công cụ hỗ trợ nào.Nó hoạt động dựa vào mục đích phát hiện các lỗi bug từ nhỏ cho đến lớn trong phần mềm. Bạn đọc tham khảo thêm: giá cước vận chuyển hàng hóa
Từ đó, đưa ra những định hướng giải quyết để có thể đảm bảo cho phần mềm hoạt động ổn định nhất khi giao cho khách hàng.
Manual Testing là gì?
Manual Testing là gì?
Manual Testing là một phương thức kiểm thử phần mềm, do tester thực hiện hoàn toàn và không có bất cứ thiết bị nào hỗ trợ. Tester sẽ thực hiện tất cả thao tác, chức năng của phần mềm một cách thủ công, giống như người dùng cuối (end-user) đang sử dụng sản phẩm.
Mục đích của Manual Testing là phát hiện bug lớn, nhỏ trong phần mềm và xác định phần mềm có vận hành đúng yêu cầu hay không, từ đó có hướng giải quyết kịp thời để phần mềm hoạt động trơn tru, ổn định trước khi bàn giao cho khách hàng.
Kiểm thử thủ công rất quan trọng bởi vì không phải lúc nào chúng ta cũng có thể thực hiện kiểm thử tự động. Thêm nữa, đối tượng sẽ trải nghiệm phần mềm là người dùng, cho nên, không có gì lạ khi chúng ta sử dụng con người để kiểm thử phần mềm.
Quá trình kiểm thử phần mềm sẽ trở nên linh hoạt hơn nhờ Manual Testing vì có thể thử nghiệm được nhiều phương án. Manual Testing thường được áp dụng trong các trường hợp: kiểm thử thăm dò, kiểm thử Ad-hoc và kiểm thử khả năng sử dụng (Usability Testing).
Tạm kết
Bài viết trên đã cung cấp cho bạn những thông tin cơ bản nhất, giải đáp thắc mắc về vị trí Manual Testing là gì, các công việc và làm thế nào để trở thành một Manual Testing chuyên nghiệp. Bên cạnh các kiến thức chung, bạn cũng cần phải có những kỹ năng cần thiết để phục vụ tốt nhất cho quá trình làm việc. Hy vọng những chia sẻ trên sẽ đưa ra những định hướng phù hợp cho bạn.
Theo dõi stringee.com để cập nhật những thông tin và kiến thức mới nhất về ngành CNTT lập trình.
Manual testing là việc kiểm thử phần mềm được thực hiện thủ công bởi QA/tester. Nó được thực hiện để tìm ra bug trong quá trình phát triển phần mềm. Trong manual testing, Tester phải kiểm tra tất cả các tính năng cần thiết của ứng dụng. Trong quá trình này, Tester phải execute test, lập báo cáo mà không cần sự trợ giúp của bất kì công cụ tự động nào.
Trong Automation testing, Tester phải viết test script để tự động hóa việc test. Họ sử dụng những công cụ thích hợp với mục tiêu là hoàn thành việc test trong một khoảng thời gian ngắn hơn và nhanh hơn.
Parameter
Manual testing
Automation testing
Định nghĩa
Testcase được thực hiện thủ công bởi tester
Tester phải viết test script và lựa chọn công cụ để tự động hóa việc test
Thời gian xử lý
Cần nhiều thời gian và nhân lực
Thời gian kiểm thử nhanh hơn so với manual testing
Exploratory Testing/ Kiểm thử khám phá
Exploratory Testing/ Kiểm thử khám phá được thực hiện
Không cho phép kiểm thử khám phá
Thay đổi UI
Sự thay đổi nhỏ như ID, Class hoặc 1 button nhưng không ảnh hưởng đến thực thi test
Chỉ 1 vài thay đổi nhỏ trong UI, người dùng phải update script để đảm bảo có kết quả như mong đợi
Độ tin cậy
Kết quả kiểm thử không đáng tin cậy vì có khả năng xảy ra lỗi do con người
Do được thực thi bằng tool và scripts nên kết quả đáng tin cậy hơn
Đầu tư
Cần nhiều nguồn nhân lực
Bắt buộc phải đầu tư tool để test và những kĩ sư auto
Báo cáo
Manual test thường lưu lại kết quả ở Excel, Word…
Tất cả stakeholders có thể đăng nhập vào hệ thống auto và kiểm tra lại kết quả test
Sự quan sát của con người
Cần có sự quan sát của con người để giúp cho hệ thống thân thiện với người dùng
Không có sự quan sát của con người
Kiểm thử hiệu năng/Performance Testing
Không thực hiện được Kiểm thử hiệu năng/Performance Testing
Kiểm thử hiệu năng/Performance Testing phải được thực hiện bởi 1 tool phù hợp
Kiến thức lập trình
Không cần có khả năng code
Phải có kiến thức về lập trình để tạo ra các test script
Cách tiếp cận tốt
Manual testing hữu ích khi chúng ta chạy lại bộ testcase 1 hoặc 2 lần
Auto test rất hữu ích khi ta chạy lại bộ script nhiều lần
Sử dụng khi nào?
Kiểm thử thủ công phù hợp cho Exploratory Testing/ test khám phá, Usability/ Khả năng sử dụng và Adhoc Testing/ Kiểm thử dựa vào thực tế
Test auto thích hợp cho kiểm thử hồi quy, hiệu năng hoặc các trường hợp có khả năng lặp lại nhiều lần
Manual testing và Automation testing
Bài đăng này đã không được cập nhật trong 3 năm
Đối với một dự án, có ba khía cạnh quan trọng cần chú ý đó là chi phí, thời gian và chất lượng. Bất kỳ dự án nào cũng có mục tiêu là có được một sản phẩm chất lượng cao nhưng giảm được chi phí và thời gian cần thiết để hoàn thành dự án. Vì thế mà kiểm thử phần mềm là một phần không thể thiếu của bất kỳ dự án nào. Kiểm thử phần mềm được phân loại gồm Manual testing(Kiểm thử thủ công) và Automation Testing (Kiểm thử tự động). Vậy kiểm thử thủ công và kiểm thử tự động có những ưu và nhược điểm gì và dựa vào đâu để bạn có thể quyết định thời điểm sử dụng kiểm thử thủ công và thời điểm sử dụng kiểm thử tự động để tối ưu hóa chi phí và thời gian của dự án.