1. Mục đích của việc lập kế hoạch kiểm thử (Test planning) là gì?
A. Viết trường hợp kiểm thử.
B. Xác định phạm vi, mục tiêu, nguồn lực và lịch trình cho hoạt động kiểm thử.
C. Thực hiện kiểm thử.
D. Báo cáo lỗi.
2. Đâu KHÔNG phải là một nguyên tắc của kiểm thử phần mềm?
A. Kiểm thử sớm.
B. Kiểm thử toàn diện là khả thi.
C. Nguyên lý Pareto (80/20).
D. Kiểm thử phụ thuộc vào ngữ cảnh.
3. Kiểm thử chấp nhận (Acceptance testing) thường được thực hiện bởi:
A. Đội kiểm thử nội bộ.
B. Nhà phát triển.
C. Người dùng cuối hoặc khách hàng.
D. Quản lý chất lượng.
4. Kiểm thử phần mềm là quá trình:
A. Viết mã chương trình.
B. Gỡ lỗi chương trình.
C. Đánh giá chất lượng và tìm lỗi trong phần mềm.
D. Triển khai phần mềm đến người dùng.
5. Kiểm thử thăm dò (Exploratory testing) là một loại kiểm thử:
A. Được thực hiện theo kịch bản kiểm thử chi tiết.
B. Dựa trên kinh nghiệm và kiến thức của người kiểm thử, ít kế hoạch trước.
C. Tự động hoàn toàn.
D. Chỉ dành cho kiểm thử hiệu năng.
6. Công cụ quản lý kiểm thử (Test management tool) giúp:
A. Tự động viết mã kiểm thử.
B. Quản lý trường hợp kiểm thử, kế hoạch kiểm thử, thực hiện kiểm thử, và báo cáo kết quả.
C. Phát hiện tất cả các loại lỗi.
D. Tăng tốc độ chạy phần mềm.
7. Kiểm thử tích hợp (Integration testing) nhằm mục đích:
A. Kiểm tra từng đơn vị mã riêng lẻ.
B. Kiểm tra sự tương tác giữa các module hoặc thành phần khác nhau.
C. Kiểm tra toàn bộ hệ thống phần mềm.
D. Kiểm tra giao diện người dùng.
8. Kiểm thử sanity (Sanity testing) tương tự như kiểm thử khói nhưng thường tập trung vào:
A. Toàn bộ hệ thống.
B. Các chức năng chính.
C. Các khu vực cụ thể bị ảnh hưởng bởi thay đổi mã.
D. Hiệu năng.
9. Độ bao phủ mã (Code coverage) là một chỉ số đo lường hiệu quả của kiểm thử:
A. Hộp đen.
B. Hộp trắng.
C. Hệ thống.
D. Chấp nhận.
10. Kiểm thử khả năng sử dụng (Usability testing) đánh giá:
A. Hiệu suất của phần mềm.
B. Mức độ dễ sử dụng và thân thiện với người dùng của phần mềm.
C. Tính năng bảo mật.
D. Tính đúng đắn của chức năng.
11. Chọn phát biểu ĐÚNG về kiểm thử Alpha và Beta:
A. Cả hai đều được thực hiện bởi người dùng cuối tại môi trường của nhà phát triển.
B. Kiểm thử Alpha được thực hiện bởi người dùng cuối tại môi trường của nhà phát triển, Beta được thực hiện bởi người dùng cuối tại môi trường của người dùng.
C. Kiểm thử Alpha được thực hiện bởi đội kiểm thử nội bộ, Beta được thực hiện bởi người dùng cuối tại môi trường của người dùng.
D. Cả hai đều được thực hiện bởi đội kiểm thử nội bộ.
12. 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 thay đổi mã nguồn.
C. Trước khi kiểm thử tích hợp.
D. Chỉ khi phát hiện lỗi nghiêm trọng.
13. Kiểm thử khói (Smoke testing) thường được thực hiện:
A. Sau mỗi thay đổi mã nguồn.
B. Trước khi kiểm thử hồi quy.
C. Để xác nhận nhanh chóng rằng bản dựng phần mềm ổn định và có thể tiếp tục kiểm thử sâu hơn.
D. Sau khi kiểm thử hệ thống.
14. Kiểm thử hộp trắng (White box testing) còn được gọi là:
A. Kiểm thử dựa trên hành vi.
B. Kiểm thử dựa trên cấu trúc.
C. Kiểm thử chấp nhận.
D. Kiểm thử hệ thống.
15. Trường hợp kiểm thử (Test case) bao gồm:
A. Mục tiêu kiểm thử, điều kiện tiên quyết, dữ liệu đầu vào, các bước thực hiện và kết quả mong đợi.
B. Mô tả chức năng cần kiểm thử.
C. Kịch bản sử dụng của người dùng.
D. Báo cáo lỗi.
16. Kiểm thử tự động (Test automation) mang lại lợi ích nào sau đây?
A. Luôn tìm ra tất cả các lỗi.
B. Giảm thời gian và chi phí kiểm thử trong dài hạn, tăng độ tin cậy và tốc độ kiểm thử.
C. Loại bỏ hoàn toàn nhu cầu kiểm thử thủ công.
D. Đảm bảo phần mềm hoàn hảo.
17. Kiểm thử đơn vị (Unit testing) thường được thực hiện bởi:
A. Người kiểm thử (Tester).
B. Nhà phát triển (Developer).
C. Quản lý dự án (Project Manager).
D. Khách hàng (Customer).
18. Kiểm thử hiệu năng (Performance testing) nhằm mục đích:
A. Kiểm tra chức năng của phần mềm.
B. Đánh giá tốc độ, khả năng chịu tải và độ ổn định của phần mềm.
C. Kiểm tra giao diện người dùng.
D. Kiểm tra bảo mật của phần mềm.
19. Trong quy trình báo cáo lỗi, `Priority` (Mức độ ưu tiên) thường mô tả:
A. Tác động của lỗi.
B. Thời gian cần thiết để sửa lỗi.
C. Thứ tự sửa lỗi, dựa trên mức độ nghiêm trọng và các yếu tố khác.
D. Người chịu trách nhiệm sửa lỗi.
20. Quy trình kiểm thử V-model nhấn mạnh vào:
A. Kiểm thử tự động.
B. Sự tương ứng giữa các giai đoạn phát triển và kiểm thử.
C. Kiểm thử liên tục.
D. Kiểm thử khám phá.
21. Ma trận truy vết yêu cầu (Requirement traceability matrix) dùng để:
A. Quản lý lỗi.
B. Theo dõi liên kết giữa yêu cầu, trường hợp kiểm thử và lỗi.
C. Lập kế hoạch kiểm thử.
D. Đo độ bao phủ mã.
22. 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 chạy nhanh nhất có thể.
D. Làm cho người dùng cuối hài lòng.
23. Chọn thứ tự các giai đoạn kiểm thử theo V-model từ trái sang phải (từ giai đoạn đầu đến giai đoạn cuối):
A. Kiểm thử đơn vị -> Kiểm thử hệ thống -> Kiểm thử tích hợp -> Kiểm thử chấp nhận.
B. Kiểm thử đơn vị -> Kiểm thử tích hợp -> Kiểm thử hệ thống -> Kiểm thử chấp nhận.
C. Kiểm thử tích hợp -> Kiểm thử đơn vị -> Kiểm thử hệ thống -> Kiểm thử chấp nhận.
D. Kiểm thử hệ thống -> Kiểm thử tích hợp -> Kiểm thử đơn vị -> Kiểm thử chấp nhận.
24. Trong quy trình báo cáo lỗi, `Severity` (Mức độ nghiêm trọng) thường mô tả:
A. Khó khăn trong việc sửa lỗi.
B. Tác động của lỗi đến hệ thống hoặc người dùng.
C. Tần suất xuất hiện của lỗi.
D. Người phát hiện ra lỗi.
25. Trong kiểm thử phần mềm, `Test basis` (Cơ sở kiểm thử) là gì?
A. Môi trường kiểm thử.
B. Tài liệu hoặc thông tin được sử dụng làm nền tảng để thiết kế trường hợp kiểm thử.
C. Dữ liệu kiểm thử.
D. Công cụ kiểm thử.
26. Loại kiểm thử nào tập trung vào việc kiểm tra các yêu cầu chức năng của phần mềm từ góc độ người dùng?
A. Kiểm thử hộp trắng (White box testing).
B. Kiểm thử đơn vị (Unit testing).
C. Kiểm thử hộp đen (Black box testing).
D. Kiểm thử tích hợp (Integration testing).
27. Kịch bản kiểm thử (Test scenario) mô tả:
A. Một bước cụ thể trong quy trình kiểm thử.
B. Một tập hợp các bước kiểm thử để kiểm tra một chức năng cụ thể.
C. Môi trường kiểm thử.
D. Dữ liệu kiểm thử.
28. Kiểm thử bảo mật (Security testing) tập trung vào:
A. Hiệu năng của phần mềm.
B. Tính năng chức năng của phần mềm.
C. Các lỗ hổng bảo mật và khả năng phòng thủ của phần mềm.
D. Giao diện người dùng.
29. Kiểm thử hệ thống (System testing) được thực hiện trên:
A. Từng module riêng lẻ.
B. Một nhóm các module tích hợp.
C. Toàn bộ hệ thống phần mềm đã tích hợp.
D. Cơ sở dữ liệu.
30. Lỗi (Bug) trong phần mềm là gì?
A. Một đoạn mã được viết sai.
B. Một sự khác biệt giữa hành vi mong đợi và hành vi thực tế của phần mềm.
C. Một yêu cầu chưa được thực hiện.
D. Một vấn đề về hiệu suất.