ISTQB – Các loại kiểm thử – Mục 2.3 – Phần 1/2

CÁC LOẠI KIỂM THỬ

Các nội dung sẽ xuất hiện trong đề thi

  1. So sánh bốn kiểu kiểm thử phần mềm (chức năng, không chức năng, cấu trúc và thay đổi liên quan) bằng ví dụ. (K2)
  2. Nhận biết kiểm thử chức năng và kiểm thử cấu trúc xảy ra ở bất kỳ mức độ kiểm thử nào. (K1)
  3. Xác định và mô tả các loại kiểm thử phi chức năng dựa trên các yêu cầu phi chức năng. (K2)
  4. Xác định và mô tả các loại kiểm thử dựa trên việc phân tích một cấu trúc hoặc kiến ​​trúc của hệ thống phần mềm. (K2)
  5. Mô tả mục đích của kiểm thử xác nhận và kiểm thử hồi quy. (K2)

Các loại kiểm thử được giới thiệu như một phương tiện để xác định mục tiêu của một cấp độ kiểm thử nhất định cho một chương trình hoặc dự án. Cần suy nghĩ về các loại kiểm thử khác nhau vì việc kiểm thử chức năng của thành phần hoặc hệ thống có thể không đủ ở mỗi cấp độ để đáp ứng các mục tiêu kiểm thử tổng thể.

Do đó, việc tập trung kiểm thử vào một mục tiêu kiểm thử cụ thể, việc lựa chọn loại kiểm thử thích hợp giúp việc đưa ra và truyền đạt các quyết định cho việc đạt được các mục tiêu kiểm thử dễ dàng hơn.

Một loại kiểm thử tập trung vào một mục tiêu kiểm thử cụ thể, có thể là kiểm thử một chức năng được thực hiện bởi thành phần hoặc hệ thống; một đặc tính chất lượng phi chức năng, chẳng hạn như độ tin cậy hoặc khả năng sử dụng; cấu trúc hoặc kiến ​​trúc của thành phần hoặc hệ thống; hoặc liên quan đến các thay đổi, tức là xác nhận rằng lỗi đã được khắc phục (kiểm thử xác nhận hoặc kiểm thử lại) và tìm kiếm các thay đổi ngoài ý muốn (kiểm thử hồi quy).

Tùy thuộc vào mục tiêu của nó, việc kiểm thử sẽ được tổ chức khác nhau. Ví dụ: kiểm thử thành phần nhằm vào hiệu suất sẽ hoàn toàn khác với kiểm thử thành phần nhằm đạt được phạm vi quyết định.

KIỂM THỬ CHỨC NĂNG (FUNCTIONAL TESTING)

Chức năng của một hệ thống (hoặc thành phần) là “những gì mà hệ thống/thành phần làm”. Điều này thường được mô tả trong chi tiêu kỹ thuật yêu cầu, chi tiêu kỹ thuật chức năng hoặc trong các trường hợp sử dụng.

Có thể có một số chức năng được “giả định” cung cấp mà không được tài liệu  hóa lại, cũng là một phần của yêu cầu đối với hệ thống, mặc dù rất khó để kiểm thử các yêu cầu không có tài liệu và các yêu cầu phải ngầm hiểu.

Kiểm thử chức năng dựa trên các chức năng này, được mô tả trong tài liệu hoặc được người kiểm thử hiểu và có thể được thực hiện ở tất cả các cấp độ kiểm thử (ví dụ: kiểm thử thành phần có thể dựa trên đặc điểm kỹ thuật của thành phần).

Kiểm thử chức năng xem xét hành vi được chỉ định và thường còn được gọi là kiểm thử hộp đen (black-box testing). Điều này không hoàn toàn đúng, vì kiểm thử hộp đen cũng bao gồm kiểm thử phi chức năng.

Theo ISO 9126, kiểm thử chức năng, có thể được thực hiện tập trung vào tính phù hợp, khả năng tương tác, bảo mật, độ chính xác và tuân thủ. Ví dụ: kiểm thử bảo mật điều tra các chức năng (ví dụ: tường lửa) liên quan đến việc phát hiện các mối đe dọa, chẳng hạn như vi rút, từ những nguồn bên ngoài độc hại.

Kiểm thử chức năng có thể được thực hiện từ hai khía cạnh: dựa trên yêu cầu hoặc dựa trên quy trình nghiệp vụ.

Kiểm thử dựa trên yêu cầu sử dụng bản đặc tả các yêu cầu chức năng đối với hệ thống làm cơ sở để thiết kế các bài kiểm thử. Một cách tốt để bắt đầu là sử dụng mục lục của đặc tả yêu cầu làm bản kiểm kê ban đầu hoặc danh sách các mục cần kiểm thử (hoặc không kiểm thử).

Nên ưu tiên các yêu cầu (requirement-based testing) dựa trên tiêu chí rủi ro (nếu điều này chưa được thực hiện trong đặc điểm kỹ thuật) và sử dụng điều này để đánh giá độ ưu tiên các bài kiểm thử . Điều này sẽ đảm bảo rằng các bài kiểm thử quan trọng nhất sẽ  được bao gồm trong các nỗ lực kiểm thử.

Kiểm thử dựa trên quy trình nghiệp vụ (business-process-based testing) sử dụng kiến ​​thức về các quy trình nghiệp vụ. Quy trình nghiệp vụ mô tả các tình huống liên quan đến việc sử dụng hệ thống nghiệp vụ hàng ngày.

Ví dụ, một hệ thống nhân sự và trả lương có thể có một quy trình nghiệp vụ bao gồm: một người nào đó gia nhập công ty, người đó được trả lương định kỳ, và cuối cùng người đó rời khỏi công ty.

Các trường hợp sử dụng bắt nguồn từ phát triển hướng đối tượng, nhưng ngày nay đã phổ biến trong nhiều vòng đời phát triển. Họ cũng lấy các quy trình nghiệp vụ làm điểm khởi đầu, mặc dù chúng bắt đầu từ các tác vụ được thực hiện bởi người dùng. Các ca sử dụng là một cơ sở rất hữu ích cho các bài kiểm thử từ góc độ nghiệp vụ.

Các kỹ thuật được sử dụng để kiểm thử chức năng thường dựa trên đặc điểm kỹ thuật, nhưng các kỹ thuật dựa trên kinh nghiệm cũng có thể được sử dụng (xem Chương 4 để biết thêm về các kỹ thuật kiểm thử).

Các điều kiện kiểm thử và các trường hợp kiểm thử bắt nguồn từ chức năng của thành phần hoặc hệ thống. Là một phần của thiết kế kiểm thử, một mô hình có thể được phát triển, chẳng hạn như một mô hình quy trình, mô hình chuyển đổi trạng thái hoặc một đặc tả ngôn ngữ đơn giản.

KIỂM THỬ PHI CHỨC NĂNG (NON-FUNCTIONAL TESTING)

Mục tiêu thứ hai để kiểm thử là kiểm thử các đặc tính chất lượng hoặc các thuộc tính phi chức năng của hệ thống (hoặc thành phần hoặc nhóm tích hợp).

Ở đây ta quan tâm đến việc một thứ gì đó được hoàn thành tốt hay nhanh như thế nào. Đang kiểm thử điều gì đó mà cần đo lường trên thang đo lường, chẳng hạn như thời gian để phản hồi.

Kiểm thử phi chức năng, cũng như kiểm thử chức năng, cũng được thực hiện ở tất cả các cấp độ kiểm thử. Kiểm thử phi chức năng bao gồm, nhưng không giới hạn, kiểm thử hiệu suất (perfomance testing), kiểm thử giới hạn(load testing), kiểm thử tải (stress testing), kiểm thử khả năng sử dụng (usability testing), kiểm thử khả năng bảo trì (maintainability testing), kiểm thử độ tin cậy (reliability testing) và kiểm thử tính di động (portability testing).

Nhiều người đã cố gắng nắm bắt chất lượng phần mềm trong một tập hợp các đặc điểm chính và các đặc điểm phụ liên quan. Trong các mô hình này, một số đặc điểm cơ bản tiếp tục xuất hiện trở lại, mặc dù vị trí của chúng trong hệ thống phân cấp có thể khác nhau.

Tổ chức Tiêu chuẩn hóa Quốc tế (ISO) đã định nghĩa một tập hợp các đặc tính chất lượng. Phản ánh một bước quan trọng hướng tới sự đồng thuận trong ngành CNTT và do đó giải quyết khái niệm chung về chất lượng phần mềm.

Tiêu chuẩn ISO 9126 xác định sáu đặc tính chất lượng và việc chia nhỏ từng đặc tính chất lượng thành một số đặc điểm phụ. Tiêu chuẩn này ngày càng được công nhận nhiều hơn trong ngành, cho phép các nhà phát triển, kiểm thử và các bên liên quan của họ sử dụng một thuật ngữ chung cho các đặc tính chất lượng và do đó cho cả kiểm thử phi chức năng.

Các đặc điểm chính và đặc điểm phụ của chúng lần lượt là:
  • Chức năng, bao gồm năm đặc điểm phụ: tính phù hợp, độ chính xác, tính bảo mật, khả năng tương tác và tính tuân thủ; đặc tính này liên quan đến kiểm thử chức năng như được mô tả ở trên;
  • Độ tin cậy, được định nghĩa thêm về độ chín của các đặc tính phụ (độ bền), khả năng chịu lỗi, khả năng phục hồi và sự tuân thủ;
  • Khả năng sử dụng, được chia thành các đặc điểm phụ là khả năng hiểu, khả năng học hỏi, khả năng hoạt động, tính hấp dẫn và tính tuân thủ;
  • Hiệu quả, được chia thành hành vi thời gian (hiệu suất), sử dụng tài nguyên và tuân thủ;
  • Khả năng bảo trì, bao gồm năm đặc điểm phụ: khả năng phân tích, khả năng thay đổi, tính ổn định, khả năng kiểm tra và tính tuân thủ;
  • Tính di động, cũng bao gồm năm đặc điểm phụ: khả năng thích ứng, khả năng cài đặt, cùng tồn tại, khả năng thay thế và tính tuân thủ

Bài viết tiếp theo tiếp tục giới thiệu về các loại kiểm thử.

Bản gốc Tiếng Anh các bạn có thể Tải về Tại đây.

Syllabus tải về Tại đây

Ezami

Related Posts

Leave a Reply

Your email address will not be published. Required fields are marked *