1. Trong kiểm thử hiệu năng, 'Kiểm thử chịu tải′ (Stress testing) khác với 'Kiểm thử tải′ (Load testing) như thế nào?
A. Kiểm thử chịu tải thực hiện trước kiểm thử tải.
B. Kiểm thử chịu tải tập trung vào hiệu suất, kiểm thử tải tập trung vào chức năng.
C. Kiểm thử chịu tải đẩy hệ thống vượt quá giới hạn bình thường để tìm điểm gãy, kiểm thử tải kiểm tra hiệu suất dưới tải trọng dự kiến.
D. Kiểm thử chịu tải chỉ thực hiện trên phần cứng, kiểm thử tải chỉ thực hiện trên phần mềm.
2. Kiểm thử hộp xám (Gray-box testing) kết hợp yếu tố của kiểm thử hộp đen và hộp trắng như thế nào?
A. Chỉ sử dụng công cụ của cả hai loại kiểm thử.
B. Người kiểm thử có kiến thức giới hạn về cấu trúc bên trong, nhưng vẫn tập trung vào chức năng bên ngoài.
C. Thực hiện kiểm thử hộp đen trước, sau đó kiểm thử hộp trắng.
D. Chỉ kiểm thử các module trung gian của hệ thống.
3. Kiểm thử giao diện người dùng (UI testing) tập trung vào điều gì?
A. Hiệu suất xử lý dữ liệu của hệ thống.
B. Tính bảo mật của hệ thống.
C. Trải nghiệm người dùng và tính dễ sử dụng của giao diện.
D. Tính tương thích của hệ thống với các hệ điều hành khác nhau.
4. Trong kiểm thử hiệu năng (Performance testing), loại kiểm thử nào tập trung vào việc đo lường khả năng đáp ứng của hệ thống dưới tải trọng cao?
A. Kiểm thử tải (Load testing)
B. Kiểm thử chịu tải (Stress testing)
C. Kiểm thử độ bền (Endurance testing)
D. Kiểm thử cấu hình (Configuration testing)
5. Kỹ thuật 'Phân tích giá trị biên′ (Boundary Value Analysis) tập trung vào việc chọn test case ở đâu?
A. Giá trị ngẫu nhiên trong phạm vi đầu vào.
B. Giá trị trung bình của phạm vi đầu vào.
C. Các giá trị tại biên và lân cận biên của phạm vi đầu vào.
D. Các giá trị đại diện cho phân vùng tương đương.
6. Công cụ nào sau đây thường được sử dụng để quản lý test case và theo dõi lỗi?
A. Microsoft Word
B. Microsoft Excel
C. Jira∕TestRail∕Zephyr
D. PowerPoint
7. Metric nào sau đây thường được sử dụng để đo lường hiệu quả của kiểm thử?
A. Số dòng code (Lines of code - LOC)
B. Độ phức tạp Cyclomatic (Cyclomatic complexity)
C. Độ bao phủ code (Code coverage)
D. Thời gian phát triển (Development time)
8. Trong kiểm thử hiệu năng, 'Kiểm thử độ bền′ (Endurance testing) nhằm mục đích gì?
A. Đo lường thời gian phản hồi nhanh nhất của hệ thống.
B. Đánh giá khả năng chịu tải tối đa của hệ thống.
C. Kiểm tra khả năng hoạt động ổn định của hệ thống trong thời gian dài dưới tải trọng dự kiến.
D. Xác định điểm mà hệ thống bắt đầu bị lỗi.
9. Kiểm thử hộp đen (Black-box testing) tập trung chủ yếu vào khía cạnh nào của phần mềm?
A. Cấu trúc code bên trong
B. Giao diện và chức năng bên ngoài
C. Hiệu suất và khả năng mở rộng
D. Bảo mật và tính toàn vẹn dữ liệu
10. Trong kiểm thử hệ thống (System testing), loại kiểm thử nào xác minh rằng tất cả các thành phần của hệ thống (phần cứng, phần mềm, mạng, dữ liệu) hoạt động cùng nhau như mong đợi?
A. Kiểm thử tích hợp (Integration testing)
B. Kiểm thử chức năng (Functional testing)
C. Kiểm thử hệ thống tổng thể (End-to-End testing)
D. Kiểm thử hiệu năng (Performance testing)
11. Lỗi (Bug) và Sai sót (Defect) trong kiểm thử phần mềm có thể được hiểu là gì?
A. Lỗi là do người dùng gây ra, sai sót là do lập trình viên.
B. Lỗi là kết quả của sai sót.
C. Lỗi và sai sót là hai khái niệm hoàn toàn khác nhau và không liên quan.
D. Sai sót là thuật ngữ chung, lỗi là một loại sai sót cụ thể.
12. Loại lỗi nào sau đây KHÔNG phải là mục tiêu chính để tìm kiếm trong kiểm thử bảo mật (Security testing)?
A. Lỗi tràn bộ đệm (Buffer overflow)
B. Lỗi logic nghiệp vụ (Business logic error)
C. Lỗi SQL Injection
D. Lỗi Cross-Site Scripting (XSS)
13. Kỹ thuật 'Đoán lỗi′ (Error guessing) trong kiểm thử phần mềm dựa trên điều gì?
A. Dựa trên phân tích mã nguồn.
B. Dựa trên kinh nghiệm và trực giác của người kiểm thử.
C. Dựa trên các yêu cầu đặc tả chi tiết.
D. Dựa trên các công cụ kiểm thử tự động.
14. Trong quy trình báo cáo lỗi (Bug reporting), thông tin nào sau đây là QUAN TRỌNG NHẤT cần cung cấp?
A. Ý kiến cá nhân của người kiểm thử về lỗi.
B. Các bước tái hiện lỗi (Steps to reproduce).
C. Thời gian ước tính để sửa lỗi.
D. Số dòng code bị lỗi.
15. Phương pháp kiểm thử nào mà người kiểm thử cần có kiến thức về cấu trúc code bên trong của phần mềm?
A. Kiểm thử hộp đen (Black-box testing)
B. Kiểm thử hộp trắng (White-box testing)
C. Kiểm thử hộp xám (Gray-box testing)
D. Kiểm thử thăm dò (Exploratory testing)
16. Loại kiểm thử nào sau đây thường được thực hiện ĐẦU TIÊN trong quy trình kiểm thử phần mềm?
A. Kiểm thử tích hợp (Integration testing)
B. Kiểm thử hệ thống (System testing)
C. Kiểm thử đơn vị (Unit testing)
D. Kiểm thử chấp nhận (Acceptance testing)
17. Kiểm thử khói (Smoke testing) thường được thực hiện khi nào?
A. Trước khi phát hành phiên bản cuối cùng
B. Sau mỗi thay đổi code lớn hoặc build mới
C. Chỉ khi có yêu cầu từ khách hàng
D. Trong giai đoạn kiểm thử hệ thống chi tiết
18. Mô hình V-model trong kiểm thử phần mềm nhấn mạnh vào điều gì?
A. Kiểm thử lặp đi lặp lại và liên tục.
B. Mối quan hệ giữa các giai đoạn phát triển và các mức độ kiểm thử tương ứng.
C. Sự linh hoạt và khả năng thích ứng với thay đổi yêu cầu.
D. Tự động hóa kiểm thử ở mọi giai đoạn.
19. Sự khác biệt chính giữa kiểm thử Alpha và kiểm thử Beta là gì?
A. Alpha test do nhà phát triển thực hiện, Beta test do người dùng cuối thực hiện.
B. Alpha test tập trung vào chức năng, Beta test tập trung vào hiệu năng.
C. Alpha test thực hiện trong môi trường phòng lab, Beta test thực hiện trong môi trường thực tế của người dùng.
D. Alpha test là kiểm thử hộp trắng, Beta test là kiểm thử hộp đen.
20. Trong kiểm thử hộp trắng, kỹ thuật 'Kiểm thử đường dẫn cơ bản′ (Basis Path Testing) tập trung vào điều gì?
A. Kiểm tra tất cả các biến số trong code.
B. Đảm bảo tất cả các đường dẫn độc lập trong code được thực thi ít nhất một lần.
C. Kiểm tra các giá trị biên của dữ liệu đầu vào.
D. Phân vùng dữ liệu đầu vào thành các nhóm tương đương.
21. Khi nào thì kiểm thử tự động hóa (Test automation) trở nên đặc biệt hữu ích?
A. Chỉ trong giai đoạn kiểm thử đơn vị.
B. Khi kiểm thử các chức năng đơn giản.
C. Khi cần thực hiện kiểm thử hồi quy thường xuyên và lặp đi lặp lại.
D. Khi kiểm thử các hệ thống nhỏ và ít phức tạp.
22. Loại kiểm thử nào sau đây tập trung vào việc xác minh rằng phần mềm hoạt động đúng với môi trường cụ thể (ví dụ: hệ điều hành, trình duyệt, cơ sở dữ liệu)?
A. Kiểm thử chức năng (Functional testing)
B. Kiểm thử tương thích (Compatibility testing)
C. Kiểm thử tích hợp (Integration testing)
D. Kiểm thử hệ thống (System testing)
23. Đâu KHÔNG phải là một giai đoạn trong quy trình kiểm thử phần mềm?
A. Lập kế hoạch kiểm thử (Test planning)
B. Thiết kế kiểm thử (Test design)
C. Phát triển phần mềm (Software development)
D. Thực thi kiểm thử (Test execution)
24. Mục tiêu của việc viết 'Test case′ là gì?
A. Tự động hóa toàn bộ quy trình kiểm thử.
B. Cung cấp hướng dẫn chi tiết để thực hiện kiểm thử và xác minh chức năng cụ thể.
C. Đánh giá hiệu suất của phần mềm.
D. Đo lường độ bao phủ code.
25. Đâu là ưu điểm chính của kiểm thử thủ công (Manual testing) so với kiểm thử tự động hóa?
A. Nhanh hơn và ít tốn kém hơn.
B. Phù hợp hơn cho kiểm thử hồi quy.
C. Khả năng phát hiện lỗi giao diện người dùng (UI) và lỗi trải nghiệm người dùng (UX) tốt hơn.
D. Độ chính xác cao hơn trong việc thực hiện test case lặp đi lặp lại.
26. Kiểm thử chấp nhận của người dùng (User Acceptance Testing - UAT) có mục đích chính là gì?
A. Kiểm tra hiệu suất hệ thống dưới tải cao.
B. Đảm bảo phần mềm đáp ứng yêu cầu nghiệp vụ và mong đợi của người dùng cuối.
C. Tìm lỗi code chi tiết bên trong hệ thống.
D. Xác định các lỗ hổng bảo mật tiềm ẩn.
27. Kỹ thuật 'Phân vùng tương đương′ (Equivalence Partitioning) thuộc loại kiểm thử nào?
A. Kiểm thử hộp trắng
B. Kiểm thử hộp đen
C. Kiểm thử hộp xám
D. Kiểm thử hiệu năng
28. Mục tiêu chính của kiểm thử hồi quy (Regression testing) là gì?
A. Tìm lỗi mới trong các chức năng mới được thêm vào
B. Đảm bảo rằng các thay đổi code không gây ra lỗi ở các chức năng đã hoạt động trước đó
C. Kiểm tra hiệu suất của phần mềm sau khi cập nhật
D. Đánh giá mức độ thân thiện với người dùng của giao diện
29. Nguyên tắc 'Kiểm thử sớm′ (Early testing) trong kiểm thử phần mềm có ý nghĩa gì?
A. Chỉ kiểm thử vào giai đoạn đầu của dự án.
B. 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.
C. Ưu tiên kiểm thử đơn vị trước kiểm thử tích hợp.
D. Sử dụng các công cụ kiểm thử tự động từ giai đoạn đầu.
30. Kiểm thử thăm dò (Exploratory testing) phù hợp nhất trong tình huống nào?
A. Khi có yêu cầu đặc tả chi tiết và đầy đủ.
B. Khi thời gian kiểm thử hạn chế và cần tìm lỗi nhanh chóng.
C. Khi cần thực hiện kiểm thử hồi quy tự động.
D. Khi muốn đảm bảo độ bao phủ code cao nhất.