1. Đâu là mục tiêu chính của việc quản lý cấu hình kiểm thử?
A. Giảm số lượng ca kiểm thử cần thiết.
B. Đảm bảo tính nhất quán và khả năng tái tạo của môi trường kiểm thử.
C. Tăng tốc độ thực hiện kiểm thử.
D. Tự động hóa toàn bộ quy trình kiểm thử.
2. Kiểm thử chấp nhận (Acceptance testing) thường được thực hiện bởi ai?
A. Nhà phát triển
B. Nhóm kiểm thử độc lập
C. Người dùng cuối hoặc khách hàng
D. Quản lý dự án
3. Chỉ số nào đo lường tỷ lệ dòng code đã được kiểm thử bởi bộ kiểm thử?
A. Độ bao phủ chức năng
B. Độ bao phủ quyết định
C. Độ bao phủ mã
D. Độ bao phủ yêu cầu
4. Loại kiểm thử nào xác minh rằng phần mềm đáp ứng các yêu cầu phi chức năng, chẳng hạn như hiệu suất và bảo mật?
A. Kiểm thử chức năng
B. Kiểm thử phi chức năng
C. Kiểm thử hộp trắng
D. Kiểm thử khói
5. Đâu là giai đoạn đầu tiên trong quy trình kiểm thử phần mềm (STLC)?
A. Thực thi kiểm thử
B. Lập kế hoạch kiểm thử
C. Phân tích yêu cầu
D. Đóng kiểm thử
6. Kiểm thử hồi quy (Regression testing) được thực hiện khi nào?
A. Khi bắt đầu dự án.
B. Sau khi sửa lỗi hoặc thêm chức năng mới.
C. Trước khi kiểm thử tích hợp.
D. Chỉ khi có yêu cầu của khách hàng.
7. Sự khác biệt chính giữa kiểm thử xác minh (Verification) và kiểm thử thẩm định (Validation) là gì?
A. Verification kiểm tra 'chúng ta có xây dựng sản phẩm đúng không?', Validation kiểm tra 'chúng ta có xây dựng đúng sản phẩm không?'
B. Verification tập trung vào kiểm thử tĩnh, Validation tập trung vào kiểm thử động.
C. Verification được thực hiện sau Validation.
D. Không có sự khác biệt, đây là hai thuật ngữ đồng nghĩa.
8. Đâu là lợi ích chính của việc sử dụng công cụ tự động hóa kiểm thử?
A. Loại bỏ hoàn toàn nhu cầu kiểm thử thủ công.
B. Giảm thời gian và chi phí kiểm thử, tăng độ chính xác.
C. Đảm bảo 100% độ bao phủ mã.
D. Thay thế hoàn toàn vai trò của người kiểm thử.
9. Trong ngữ cảnh Agile, kiểm thử thường được thực hiện:
A. Chỉ ở cuối mỗi Sprint.
B. Liên tục và lặp đi lặp lại trong suốt Sprint.
C. Chỉ bởi nhóm kiểm thử chuyên biệt.
D. Sau khi hoàn thành tất cả các Sprint.
10. Trong báo cáo lỗi (Bug report), thông tin nào sau đây là QUAN TRỌNG NHẤT để giúp nhà phát triển sửa lỗi?
A. Đánh giá mức độ nghiêm trọng (Severity) và mức độ ưu tiên (Priority) của lỗi.
B. Môi trường kiểm thử và cấu hình hệ thống.
C. Các bước tái hiện lỗi (Steps to reproduce).
D. Đề xuất cách sửa lỗi.
11. Loại kiểm thử nào tập trung vào việc đánh giá trải nghiệm người dùng (UX) và khả năng sử dụng (Usability) của phần mềm?
A. Kiểm thử chức năng
B. Kiểm thử hiệu năng
C. Kiểm thử khả năng sử dụng (Usability testing)
D. Kiểm thử bảo mật
12. Phương pháp 'Đoán lỗi′ (Error guessing) trong kiểm thử là:
A. Một kỹ thuật kiểm thử tự động.
B. Một kỹ thuật kiểm thử hộp trắng dựa trên kinh nghiệm của người kiểm thử.
C. Một kỹ thuật kiểm thử hộp đen dựa trên kinh nghiệm của người kiểm thử.
D. Một kỹ thuật kiểm thử hiệu năng.
13. Kiểm thử khói (Smoke testing) được thực hiện để:
A. Thực hiện kiểm thử chi tiết mọi chức năng.
B. Đảm bảo hệ thống không bị lỗi hiệu năng.
C. Xác minh các chức năng cốt lõi hoạt động sau khi build mới.
D. Kiểm tra khả năng chịu tải của hệ thống.
14. Trong kiểm thử hiệu năng, loại kiểm thử nào mô phỏng việc nhiều người dùng truy cập hệ thống đồng thời?
A. Kiểm thử tải
B. Kiểm thử độ bền
C. Kiểm thử ứng suất
D. Kiểm thử khả năng mở rộng
15. Loại tài liệu nào mô tả chi tiết các bước thực hiện để kiểm thử một tính năng cụ thể?
A. Kế hoạch kiểm thử
B. Báo cáo kiểm thử
C. Ca kiểm thử (Test case)
D. Ma trận truy vết yêu cầu
16. Kỹ thuật kiểm thử nào liên quan đến việc chọn các giá trị đầu vào ở biên của các lớp tương đương?
A. Phân vùng tương đương
B. Phân tích giá trị biên
C. Kiểm thử bảng quyết định
D. Đoán lỗi
17. Trong kiểm thử bảo mật, kỹ thuật nào mô phỏng các cuộc tấn công từ bên ngoài để tìm lỗ hổng?
A. Kiểm thử hộp trắng
B. Kiểm thử hộp đen
C. Kiểm thử xâm nhập (Penetration testing)
D. Kiểm thử hiệu năng
18. Mục tiêu chính của kiểm thử phần mềm là gì?
A. Chứng minh rằng phần mềm không có lỗi.
B. Tìm càng nhiều lỗi càng tốt trước khi phát hành.
C. Đảm bảo phần mềm tuân thủ mọi yêu cầu của khách hàng.
D. Cải thiện hiệu suất của phần mềm.
19. Phương pháp kiểm thử nào thường được sử dụng để kiểm thử API (Application Programming Interface)?
A. Kiểm thử giao diện người dùng (UI Testing)
B. Kiểm thử cơ sở dữ liệu (Database Testing)
C. Kiểm thử dịch vụ web (Web Service Testing)
D. Kiểm thử hiệu năng (Performance Testing)
20. Kiểm thử đột biến (Mutation testing) thuộc loại kiểm thử nào?
A. Kiểm thử hộp đen
B. Kiểm thử hộp trắng
C. Kiểm thử hiệu năng
D. Kiểm thử bảo mật
21. Trong mô hình chữ V (V-model), giai đoạn kiểm thử hệ thống (System testing) tương ứng với giai đoạn phát triển nào?
A. Phân tích yêu cầu
B. Thiết kế kiến trúc
C. Thiết kế mức cao
D. Thiết kế mức thấp∕chi tiết
22. Kiểm thử cặp đôi (Pair testing) là gì?
A. Kiểm thử hai thành phần phần mềm cùng nhau.
B. Hai người kiểm thử cùng làm việc trên cùng một ca kiểm thử.
C. Kiểm thử phần mềm với hai bộ dữ liệu đầu vào khác nhau.
D. Kiểm thử phần mềm trên hai hệ điều hành khác nhau.
23. Khi nào thì nên dừng kiểm thử phần mềm?
A. Khi đã hết thời gian và ngân sách dự án.
B. Khi tất cả các ca kiểm thử đã được thực hiện.
C. Khi đạt được tiêu chí dừng kiểm thử đã được xác định trước.
D. Khi không tìm thấy lỗi mới trong một khoảng thời gian nhất định.
24. Kiểm thử hộp đen (Black-box testing) còn được gọi là:
A. Kiểm thử cấu trúc
B. Kiểm thử chức năng
C. Kiểm thử đường dẫn
D. Kiểm thử hiệu năng
25. Nguyên tắc 'Kiểm thử sớm′ (Early testing) trong kiểm thử phần mềm nhấn mạnh điều gì?
A. Bắt đầu kiểm thử chỉ sau khi hoàn thành phát triển.
B. Tập trung vào kiểm thử tự động trước kiểm thử thủ công.
C. Bắt đầu kiểm thử càng sớm càng tốt trong vòng đời phát triển phần mềm.
D. Chỉ kiểm thử các yêu cầu có độ ưu tiên cao trước.
26. Trong kiểm thử hiệu năng, 'điểm nghẽn′ (bottleneck) thường đề cập đến:
A. Lỗi nghiêm trọng gây sập hệ thống.
B. Thành phần hệ thống gây ra giới hạn hiệu năng.
C. Thời gian phản hồi của hệ thống quá chậm.
D. Số lượng người dùng tối đa hệ thống có thể chịu tải.
27. Kịch bản nào sau đây cần kiểm thử hộp trắng?
A. Kiểm tra giao diện người dùng.
B. Kiểm tra luồng dữ liệu bên trong một hàm phức tạp.
C. Kiểm tra chức năng thanh toán trực tuyến.
D. Kiểm tra khả năng tương thích với trình duyệt khác nhau.
28. Điểm khác biệt chính giữa lỗi (Error), sai sót (Fault) và thất bại (Failure) trong kiểm thử phần mềm là gì?
A. Chúng là các thuật ngữ đồng nghĩa và có thể thay thế cho nhau.
B. Error là hành động của con người gây ra Fault trong code, Fault dẫn đến Failure khi thực thi.
C. Failure là nguyên nhân gốc rễ, Fault là biểu hiện, Error là hậu quả.
D. Error xảy ra trong môi trường kiểm thử, Fault xảy ra ở môi trường sản xuất, Failure xảy ra trong quá trình phát triển.
29. Loại kiểm thử nào tập trung vào việc kiểm tra các thành phần riêng lẻ của phần mềm?
A. Kiểm thử hệ thống
B. Kiểm thử tích hợp
C. Kiểm thử đơn vị
D. Kiểm thử chấp nhận
30. Đâu là nhược điểm của kiểm thử thủ công so với kiểm thử tự động?
A. Yêu cầu kiến thức chuyên môn sâu về kiểm thử.
B. Dễ mắc lỗi do con người, tốn thời gian và chi phí cho kiểm thử hồi quy.
C. Khó thực hiện kiểm thử khám phá.
D. Không thể kiểm thử giao diện người dùng.