4 MỨC ĐỘ KIỂM THỬ PHẦN MỀM TESTER PHẢI BIẾT

Trước khi CO-WELL Asia realease một phần mềm nào đó, chúng đã phải trải qua một quá trình kiểm tra kỹ lưỡng để đảm bảo rằng phần mềm sẽ hoạt động mượt mà, ổn định theo đúng chức năng được thiết kế. Có 04 mức độ kiểm thử phần mềm chính cần hoàn thành trước khi đưa phần mềm vào sử dụng: unit testing, integration testing, system testing, và acceptance testing.

Nhiều bạn sẽ đặt câu hỏi tại sao không bao gồm Regression Tesing (Kiểm thử hồi quy)? Kiểm thử hồi quy không phải là một cấp độ kiểm thử riêng biệt; nó chỉ là một loại kiểm thử có thể được thực hiện trong bất kỳ giai đoạn nào trong bốn mức độ kiểm thử phần mềm chính mà CO-WELL đã nhắc đến ở trên.

cac muc do kiem thu

1. Unit Testing (Kiểm thử đơn vị)

Unit testing, còn được gọi là Component testing, mức độ kiểm thử phần mềm này thường do Developer phụ trách, họ sẽ đi kiểm tra các module, các hàm, các phương thức, các lớp,… mà họ viết ra nhằm gia tăng sự tin cậy cho các chức năng mà mình viết.

Kiểm thử đơn vị nằm trong phạm vi của Kiểm thử hộp trắng (White-box testing), tức là kiểm tra code bên trong của một chức năng hoặc hệ thống để xem chức năng hoặc hệ thống đó được viết đúng chuẩn code hay chưa, đoạn code đó khi chạy hiệu năng có tốt hay không, có nhanh hay không, có tốn tài nguyên hay không,..

Tuy nhiên, kiểm thử theo phương pháp này không thể tìm được mọi lỗi của ứng dụng. Không thể đánh giá mọi tình huống có thể xảy ra trong chương trình. Nó bị giới hạn bởi các tình huống và bộ dữ liệu test mà developer sử dụng để kiểm thử chương trình.

2. Integration Testing (Kiểm thử tích hợp)

Kiểm thử tích hợp là kiểm thử sự tương tác giữa các chức năng với nhau trong hệ thống và được thực hiện bởi Tester. Ví dụ: sau khi đã unit test chức năng đăng nhập và chức năng đăng ký thì ta có thể tiến hành kiểm thử tích hợp của 2 chức năng này để xem chúng có tương tác tốt với nhau không, sau khi đăng ký thành công thì ta có thể tiến hành đăng nhập bằng tài khoản đã đăng ký xem có thực hiện được không.

Một ví dụ khác: Sau khi unit test cho các chức năng con trong chức năng đăng ký môn học như đăng nhập, đăng ký tài khoản, kiểm tra điều kiện tiên quyết, kiểm tra học phí,.. thì ta kiểm tra sự tích hợp giữa các chức năng này bằng cách tiến hành đăng ký một môn học để xem sự tương tác giữa các chức năng này có thực hiện được không, có trơn tru không, có bị mất liên kết chỗ nào không,…

Integration Testing có hai cách tiếp cận phổ biến: Tích hợp từ dưới đi lên (Bottom-up integration) và tích hợp đi trên đi xuống (Top-down integration)

Tích hợp từ dưới đi lên: Việc kiểm thử được bắt đầu bằng unit test, sau đó sẽ đi đến mức cao hơn, đó là kết hợp các thành phần và chức năng của hệ thống.

cac muc do kiem thu 1

Tích hợp từ trên đi xuống: Những module cấp cao nhất được thử nghiệm đầu tiên rồi đến các module thấp hơn được thử nghiệm.

cac muc do kiem thu 2

Trong một môi trường phát triển phần mềm hiện đại, kiểm thử từ dưới lên thường được thực hiện đầu tiên và sau đó là kiểm thử từ trên xuống. Quá trình này được kết thúc sau nhiều vòng kiểm thử trên ứng dụng hoàn chỉnh, tốt nhất là sử dụng các kịch bản kiểm thử dựa trên các tình huống thực tế.

3. System Testing (Kiểm thử hệ thống)

Kiểm thử hệ thống là kiểm thử một hệ thống đã hoàn thành, đã tích hợp đầy đủ các chức năng nhằm kiểm tra xem hệ thống phần mềm đó có đáp ứng đầy đủ các yêu cầu chức năng theo bản đặc tả yêu cầu phần mềm (SRS) hay không. Người thực hiện test level này thường là Tester.

Kiểm thử hệ thống thuộc phạm vi Kiểm thử hộp đen (tức là Tester chỉ quan tâm đầu vào và kết quả mong đợi ở đầu ra mà không cần kiểm tra code bên trong được viết như thế nào).

system test kiem thu he thong

Dưới đây là một số loại kiểm thử thường được thực hiện trong System Test:

4. Acceptance Testing (Kiểm thử chấp nhận)

Mức độ kiểm thử phần mềm cuối cùng chính là Acceptance Test (Kiểm thử chấp nhận) - kiểm tra xem hệ thống có đáp ứng đúng nhu cầu và mong đợi của khách hàng hay không.

Kiểm thử chấp nhận thường là trách nhiệm của người dùng hoặc khách hàng. Trong kiểm thử hệ thống, khách hàng sẽ kiểm tra xem phần mềm được viết có hoạt động đúng như mong đợi của mình không, có đảm bảo tính tiện dụng, hiệu suất hoạt động có như mong đợi không, có bảo mật tốt hay không,….

Tìm lỗi không phải là trọng tâm chính trong kiểm thử chấp nhận, vì việc tìm lỗi đã được đội Developer và Tester thực hiện trong các giai đoạn kiểm thử đơn vị, kiểm thử tích hợp, kiểm thử hệ thống rồi.

Acceptance test gồm 2 loại kiểm thử là:

Xem thêm:

Link nội dung: https://khangdienreal.vn/test-level-la-gi-a37677.html