Các mức độ kiểm thử phần mềm tester cần biết

Ngày đăng: 09/08/2022   -    Cập nhật: 09/08/2022
Kiểm thử phần mềm là bước cuối cùng trong vòng tròn phát triển sản phẩm và trước khi đưa đến tay khách hàng. Kiểm thử sẽ được thực hiện theo các mức độ khác nhau: kiểm thử đơn vị, kiểm thử tích hợp, kiểm thử chức năng, kiểm tra từ đầu đến cuối, kiểm thử chấp nhận, kiểm thử hiệu suất và kiểm thử khói. Bài viết này NIIT sẽ chia sẻ cho các bạn về các mức độ kiểm thử phần mềm mà bạn nên biết.

Unit testing (kiểm thử đơn vị)

Unit testing là mức độ kiểm thử phần mềm để xác định từng thành phần nhỏ nhất của phần mềm được phát triển. Trong bất cứ phần mềm nào, Unit testing là mức kiểm thử nhỏ nhất. Lớp (class), thủ tục (procedure), hàm (function) đều được xem là một Unit. 
Unit testing giúp xác định từng thành phần nhỏ nhất của phần mềm được phát triển
 
Unit testing là một kiểu kiểm thử hộp trắng, được thực hiện để biết được từng module riêng lẻ của mã nguồn có hoạt động chính xác hay không. Việc kiểm tra từng đơn vị sẽ giúp bắt kịp lỗi do thay đổi. Ưu điểm của kiểm thử đơn vị là cho phép lập trình viên cấu trúc lại code dễ dàng, nhanh chóng. 
 
Bên cạnh đó, kiểm thử đơn vị có tính chất mô-đun nên cho phép kiểm thử từng phần mà không cần chờ người khác hoàn thiện. Hơn nữa, phát hiện và sửa lỗi trong giai đoạn này sẽ ít tốn kém hơn những giai đoạn sau.  

Integration Testing (kiểm thử tích hợp)

Integration Testing là mức độ thứ hai trong kiểm thử phần mềm nhằm kiểm tra nhóm module liên quan đến nhau xem chúng hoạt động ra sao, có đúng chức năng như trong thiết kế hay không. 
 
Integration Testing nhằm kiểm tra nhóm module liên quan đến nhau xem chúng hoạt động đúng chức năng hay không

Theo ISTQB, Integration Testing được thực hiện để phát hiện lỗi khi các thành phần của hệ thống tương tác với nhau hoặc lỗi về giao diện. Một số phương pháp thường được sử dụng khi kiểm thử tích hợp gồm: Big Bang, Sandwich, Top-down, Bottom-up. 

Functional Testing (kiểm thử chức năng)

Functional Testing là một kiểu kiểm thử hộp đen và test case của nó dựa trên đặc tả của thành phần hay ứng dụng đang test. Người kiểm thử rất ít quan tâm đến cấu trúc bên trong ứng dụng mà chỉ cần nhập vào các giá trị nhập sau đó kiểm tra kết quả cuối cùng. 
Functional Testing chỉ quan tâm đến kết quả cuối cùng

Kiểm thử viên sẽ cố gắng tìm ra sự khác biệt giữa thực tế phần mềm cung cấp với những đặc tả bên ngoài (đặc tả chính xác về hành vi của phần mềm theo góc nhìn của người dùng). Một số kỹ thuật được áp dụng trong kiểm thử chức năng: Decision Tables, Domain Analysis, Equivalence Class Partitioning,…
 
Kiểm thử chức năng được thực hiện theo 5 bước cơ bản: xác định chức năng phần mềm kiểm thử => tạo dữ liệu đầu vào => xác định kết quả đầu ra dựa trên tài liệu đặc tả kỹ thuật các chức năng => thực hiện các trường hợp kiểm thử => so sánh kết quả mong muốn và kết quả thực tế đạt được. 

End-to-End Testing (kiểm tra từ đầu đến cuối)

End-to-End Testing là kiểm tra từ đầu đến cuối nhằm xác định xem ứng dụng và các thành phần của nó có đáp ứng theo đúng yêu cầu hay không. Kiểm tra đầu cuối thường được thực hiện ngay sau khi kiểm tra hệ thống và kiểm tra chức năng của ứng dụng. 
 
End-to-End Testing nhằm xác định xem ứng dụng và thành phần đáp ứng yêu cầu không

End-to-End Testing được thực hiện trong những tình huống thực tế như giao tiếp của ứng dụng với mạng, phần cứng, cơ sở dữ liệu và những ứng dụng khác. Nó thường được thực hiện khi đã kiểm thử toàn bộ chức năng của ứng dụng. Một số công cụ được sử dụng gồm: Avo Assure, TestCraft. 
Khi kiểm tra đầu cuối, chúng ta sẽ xem xét lần lượt 3 loại: chức năng của người dùng, điều kiện và các trường hợp thử nghiệm. Những hoạt động có trong End-to-End Testing:
  • Thiết lập những môi trường thử nghiệm phù hợp 
  • Nghiên cứu tỉ mỉ các yêu cầu để thực hiện thử nghiệm 
  • Nghiên cứu cẩn thận yêu cầu về phần mềm và ứng dụng 
  • Mô tả các sub-system, hệ thống phần mềm chính có liên quan
  • Thống kê vai trò, trách nhiệm đối với sub-system và hệ thống 
  • Thiết kế các trường hợp kiểm thử và theo dõi các yêu cầu
  • Lưu hoặc ghi lại dữ liệu đầu vào và đầu ra của mỗi hệ thống 

Acceptance Testing (kiểm thử chấp nhận)

Acceptance Testing là mức độ cuối cùng trong kiểm thử phần mềm. Kiểm tra hành vi của hệ thống và thông qua dữ liệu thực tế sẽ xác định xem hệ thống đó có đáp ứng được những tiêu chí đề ra và yêu cầu của khách hàng hay không. 
Acceptance Testing là mức độ cuối cùng trong kiểm thử phần mềm

Điều kiện tiên quyết của Acceptance Testing là các khâu kiểm thử đã hoàn thiện, môi trường acceptance testing đã sẵn sàng, không còn lỗi quan trọng trong hệ thống và đảm bảo các yêu cầu nghiệp vụ chính của ứng dụng. 
Một số kỹ thuật thường được sử dụng khi kiểm thử chấp nhận: phân vùng tương đương, phân tích giá trị biên và sử dụng bảng quyết định. Các bước thực hiện acceptance testing gồm: 
  • Phân tích yêu cầu của phần mềm 
  • Tạo kế hoạch kiểm tra
  • Xác định kịch bản kiểm thử 
  • Tạo các trường hợp kiểm tra 
  • Chuẩn bị data test 
  • Thực hiện kiểm thử 
  • Ghi nhận kết quả 
  • Xác định chức năng của sản phẩm

Performance Testing (kiểm thử hiệu suất)

Performance Testing nhằm xác định hiệu suất của hệ thống dưới khối lượng truy cập và khối lượng công việc xác định. Cụ thể, kiểm thử viên sẽ xác định băng thông, khả năng xử lý và khả năng mở rộng. Có 5 loại kiểm thử hiệu năng thông dụng: Load Testing, Stress Testing, Endurance Testing, Spike Testing và Volume Testing. 
 
Performance Testing nhằm xác định hiệu suất của hệ thống

Mục tiêu chính của Performance Testing là đánh giá hiệu năng sản phẩm, hạ tầng triển khai, các vấn đề ảnh hưởng và điều chỉnh hệ thống. Đánh giá hiệu suất thường dựa trên một số tiêu chí như: tính ổn định, thời gian phản hồi, khả năng mở rộng, băng thông thông lượng. 

Smoke Testing (kiểm thử khói)

Smoke Testing (kiểm thử khói) thường được thực hiện trên các bản build phần mềm lúc đầu và xác định xem những chức năng quan trọng của phần mềm có hoạt động ổn định, hiệu quả hay không. 
Smoke Testing xác định chức năng quan trọng của phần mềm có hoạt động ổn định và hiệu quả không

Kiểm thử khói sẽ được thực hiện bất cứ khi nào chức năng mới của phần mềm được phát triển hay tích hợp với bản build hiện có, triển khai trong môi trường QA/staging. Chỉ cần có bản build mới, nhóm QA sẽ xác định chức năng chính của ứng dụng và bắt đầu kiểm thử khói. 
Kiểm thử khói đóng vai trò quan trọng trong phát triển phần mềm, bởi lẽ, nó đảm bảo tính chính xác của hệ thống trong giai đoạn đầu. Hầu hết lỗi được xác định ở giai đoạn đầu phát triển phần mềm đều có sự trợ giúp của smoke testing (kiểm thử khói). 
Team QA có khả năng tìm thấy lỗi bằng cách kiểm thử khói đối với chức năng ứng dụng có thể phát sinh bởi code mới. Nói chung, kiểm thử khói giúp đơn giản hóa việc phát hiện và chỉnh sửa lỗi, bao gồm cả những lỗi nghiêm trọng.

Trên đây là thông tin về các mức độ kiểm thử phần mềm đặc điểm, chức năng, các bước thực hiện mỗi loại. Hy vọng, những thông tin mà chúng tôi chia sẻ thực sự hữu ích với những bạn muốn trở thành một tester giỏi trong tương lai. 

Tham khảo: Khóa học tester

Bình luận Facebook
Khóa học liên quan đến bài viết

KHÓA HỌC LẬP TRÌNH FRONT END VỚI REACT.JS

56 giờ
Học Lập trình Front end hiện đại với ReactJS. Học làm chủ HTML, CSS, JS và thư viện JavaScript phổ biến nhất hiện nay. Sẵn sàng đi thực tập / đi làm ngay sau khóa học.

Khóa học PHP Full stack [2023] cho người mới bắt đầu

96 giờ
Khóa học Lập trình PHP Full stack, phiên bản cập nhật lần thứ 8. Dạy Lập trình PHP bài bản từ Front end đến Back end + Laravel. Hướng dẫn làm 2 Dự Án Web lớn

VBA Excel Toàn Tập (Cơ Bản - Nâng Cao)

29 Buổi
Khóa học VBA Excel Toàn Tập (Cơ bản-Nâng cao) cho dân văn phòng nhằm giúp tối đa hóa năng suất, chất lượng công việc với công cụ Excel. Học sử dụng VBA để tự động hóa công việc ở một tầm cao mới.

Khóa học BIG DATA với Hadoop và Spark

56 giờ
NIIT - ICT Hà Nội cung cấp khóa học BIG DATA nhằm đáp ứng nhu cầu phân tích dữ liệu lớn, phức tạp, tăng cao hiệu suất xử lý. Tùy biến linh hoạt theo nhu cầu.

Lập trình PHP với Laravel Framework

42 giờ
Khóa học Lập trình PHP với Laravel Framework được NIIT - ICT HÀ NỘI xây dựng nhằm hoàn thiện kỹ năng lập trình web các các bạn đã biết Lập trình Web PHP thuần.

Khóa học Java Full stack (IJFD)

104 giờ
Học lập trình Java Fullstack với khóa học được xây dựng theo lộ trình bài bản, từ JAVA CƠ BẢN đến JAVA WEB và nâng cao về JAVA FRAMEWORK như: Spring Boot, Hibernate
Mục lục
Đăng ký tư vấn
Nhân viên gọi điện tư vấn miễn phí sau khi đăng ký
Được cập nhật các ưu đãi sớm nhất
Hotline: 0383180086
Tên không được để trống
Số điện thoại không được để trống
Email không được để trống
Hãy đăng ký để nhận những thông tin mới nhất về học bổng mới nhất tại NIIT - ICT Hà Nội
top
Đóng lại Đăng ký học tại NIIT - ICT Hà Nội
6260+ học viên đã theo học tại NIIT - ICT Hà Nội và có việc làm tốt trong ngành lập trình. Nắm lấy cơ hội ngay hôm nay!
Chọn khóa học
  • KHÓA HỌC LẬP TRÌNH FRONT END VỚI REACT.JS
  • KHÓA HỌC LẬP TRÌNH PHP WEB
  • Khóa học PHP Full stack [2023] cho người mới bắt đầu
  • Khóa học BIG DATA với Hadoop và Spark
  • Khóa học Lập trình Android tại Hà Nội
  • [Tuyển sinh 2023] Lập trình viên Quốc tế DigiNxt
  • Khóa học Tiền lương & Phúc lợi (C&B Excel) tại Hà Nội
  • LẬP TRÌNH GAME
    • Khóa học Lập trình Game Unity
  • LẬP TRÌNH WEB FRONT END
    • KHÓA HỌC PYTHON HƯỚNG ĐỐI TƯỢNG
    • KHÓA HỌC ANGULAR & TYPESCRIPT (FRONT END)
  • LẬP TRÌNH WEB BACK END
    • LẬP TRÌNH JAVA WEB VỚI FRAME WORK
    • Lập trình Web với Django
    • Lập trình PHP với Laravel Framework
  • CHƯƠNG TRÌNH ĐÀO TẠO ỨNG DỤNG CÔNG NGHỆ
    • Khóa học Tiền lương & Phúc lợi (C&B Excel) tại TP HCM
  • LẬP TRÌNH WEB FULL STACK
    • Khóa học Java Full stack (IJFD)
  • LẬP TRÌNH MOBILE
    • FRONT-END VỚI REACTJS VÀ REACT NATIVE
    • Lập trình Android Nâng cao
  • ĐÀO TẠO CHO DOANH NGHIỆP
    • KHÓA HỌC BUSINESS ANALYSIC TỪ CƠ BẢN ĐẾN NÂNG CAO 2023
    • Khóa học Magento: Làm chủ CMS TMĐT lớn nhất
    • Khóa học IOT: Xây dựng Sản phẩm IOT với Raspberry Pi
    • Khóa học Automation Testing Chuyên nghiệp
  • KHÓA HỌC DỰ ÁN
    • Học sử dụng bộ Office: Word, Excel, Power Point, Mail chuyên nghiệp
  • KHÓA HỌC KHÁC
    • VBA Excel Toàn Tập (Cơ Bản - Nâng Cao)
    • VBA Excel Nâng cao
    • Khóa học JMeter: Performance Testing
    • Khóa học Tester đạt chuẩn Quốc tế ISTQB Foundation Level
    • Khoá Học Tester đạt chuẩn quốc tế ISTQB Advanced Level
Bạn chưa chọn khóa học cần đăng ký
Tên không được để trống
Số điện thoại không được để trống
Email không được để trống
Đăng ký học thành công!
Cảm ơn bạn đã đăng ký học tại NIIT - ICT HÀ NỘI!