Please enable JavaScript.
Coggle requires JavaScript to display documents.
Software Testing - Coggle Diagram
Software Testing
3. Kiểm thử hệ thống
Performance Test: thời gian phản hồi, hiệu năng,...
-
-
-
-
Khái niệm
Các loại lỗi
Error: sai từ con người (viết mã, thiết kế)
-
-
Test
Test case: input, expected output
-
Test context/fixture: môi trường kiểm thử (db, thư viện,...)
-
-
-
Mô hình RIP
-
Infection(nhiễm lỗi): lỗi ảnh hưởng trạng thái (biến, cấu trúc dữ liệu,...) của chương trình.
-
1. Kiểm thử đơn vị
Black-box
Kiểm thử vét cạn: all-in, tốt thời gian + tài nguyên (tốt với chương trình nhỏ, không tốt với chương trình có đầu vào vô hạn)
Kiểm thử ngẫu nhiên: Ưu điểm: tạo ra số lượng test nhanh, có thể phát hiện các lỗi bất ngờ/ Nhược điểm: phủ kém, dễ lạc nếu không log
Kiểm thử ngẫu nhiên thích ứng: lựa chọn ứng viên có dis từ T (mình) xa nhất c (ngẫu nhiên)
Ưu điểm: đa dạng bộ test của ngẫu nhiên
Nhược điểm: chi phí cao hơn random thuần, không thích hợp không gian nhiều chiều
Kiểm thử tổ hợp: kiểm tra sự kết hợp giữa các đầu vào (OS, Chrome, Language) -> cấp số nhân (máy bay)
Ưu điểm: phát hiện lỗi do tương tác tốt
Nhược điểm: tổ hợp ràng buộc phức tạp, có thể miss nếu tương tác nhiều chiều
Phân lớp tương đương: chia nhiều vùng theo chức năng/hành vi, mỗi vùng lấy 1 giá trị đại diện.
Ưu điểm: giảm test mà vẫn hiệu quả
Nhược điểm: phụ thuộc vào đặc tả, quá to sẽ dễ miss, quá gần sẽ dễ trùng (tăng test case không cần thiết)
Phân tích giá trị biên: lấy các giá trị cận trên/dưới của điều kiện/ràng buộc/ranh giới
Ưu điểm: ít test case hơn, phát hiện các lỗi ở ranh giới
Nhược điểm: không bao phủ hết nếu chỉ test ở biên, dữ liệu không rõ ràng (ảnh),....
-
-
Regression Testing
1. Kiểm thử có chọn lọc
-
B2: Đánh dấu các path nguy hiểm dựa vào sự khác nhau giữa v1, v2 (có thể bằng CFG)
-
2. Kiểm thử độ ưu tiên
-
PP2: Ưu tiên theo phần bù (additional): chọn test case phủ được nhiều đơn vị mà chưa được phủ nhất làm test kế tiếp
-
-