Đề 9 – Đề thi, câu hỏi trắc nghiệm online Kiểm thử phần mềm

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Kiểm thử phần mềm

Đề 9 - Đề thi, câu hỏi trắc nghiệm online Kiểm thử phần mềm

1. Tại sao việc quản lý test case lại quan trọng trong kiểm thử phần mềm?

A. Để giảm chi phí kiểm thử.
B. Để đảm bảo tất cả các yêu cầu đều được kiểm tra và dễ dàng theo dõi tiến độ kiểm thử.
C. Để tăng tốc độ thực hiện kiểm thử.
D. Để tạo ra các báo cáo kiểm thử đẹp mắt.

2. Phân tích giá trị biên (Boundary Value Analysis) là kỹ thuật kiểm thử dựa trên nguyên tắc nào?

A. Lỗi thường xảy ra ở các giá trị biên của dữ liệu đầu vào.
B. Lỗi thường xảy ra ở các giá trị trung bình của dữ liệu đầu vào.
C. Lỗi thường xảy ra khi có sự kết hợp phức tạp giữa các dữ liệu đầu vào.
D. Lỗi thường xảy ra do sự không tương thích giữa các module.

3. Phương pháp kiểm thử nào sau đây giúp phát hiện các vấn đề về bộ nhớ (memory leaks) trong ứng dụng?

A. Kiểm thử đơn vị.
B. Kiểm thử tích hợp.
C. Kiểm thử hiệu năng.
D. Kiểm thử bảo mật.

4. Lợi ích chính của việc sử dụng công cụ quản lý kiểm thử (test management tool) là gì?

A. Tự động viết test case.
B. Cải thiện khả năng theo dõi, báo cáo và quản lý các hoạt động kiểm thử.
C. Tự động sửa lỗi trong mã nguồn.
D. Tăng tốc độ phát triển phần mềm.

5. Tại sao việc ước lượng thời gian kiểm thử lại quan trọng?

A. Để đảm bảo dự án hoàn thành đúng thời hạn và trong ngân sách.
B. Để tăng số lượng test case được thực hiện.
C. Để giảm số lượng lỗi được phát hiện.
D. Để làm hài lòng khách hàng.

6. Độ bao phủ mã (Code coverage) là gì?

A. Đo lường mức độ mã nguồn được bảo vệ khỏi các cuộc tấn công mạng.
B. Đo lường tỷ lệ phần trăm mã nguồn được thực thi trong quá trình kiểm thử.
C. Đánh giá mức độ dễ đọc và dễ hiểu của mã nguồn.
D. Xác định số lượng lỗi tiềm ẩn trong mã nguồn.

7. Kiểm thử khói (Smoke testing) thường được thực hiện ở giai đoạn nào?

A. Trước khi bắt đầu kiểm thử đơn vị.
B. Sau khi hoàn thành kiểm thử hệ thống.
C. Trước khi chuyển bản build cho đội kiểm thử.
D. Sau khi triển khai phần mềm lên môi trường production.

8. Sự khác biệt giữa `verification` và `validation` trong kiểm thử phần mềm là gì?

A. Verification là kiểm tra mã nguồn, validation là kiểm tra chức năng.
B. Verification là `chúng ta có xây dựng sản phẩm đúng cách không?`, validation là `chúng ta có xây dựng đúng sản phẩm không?`
C. Verification là kiểm tra tĩnh, validation là kiểm tra động.
D. Verification thực hiện bởi lập trình viên, validation thực hiện bởi kiểm thử viên.

9. Mục tiêu chính của việc viết báo cáo lỗi (bug report) là gì?

A. Đánh giá hiệu suất của kiểm thử viên.
B. Cung cấp thông tin chi tiết để lập trình viên có thể tái tạo và sửa lỗi.
C. Theo dõi số lượng lỗi được phát hiện.
D. Đảm bảo tuân thủ quy trình kiểm thử.

10. Kiểm thử hiệu năng (Performance testing) nhằm mục đích gì?

A. Tìm kiếm các lỗ hổng bảo mật.
B. Đánh giá khả năng đáp ứng, độ ổn định và khả năng mở rộng của phần mềm.
C. Kiểm tra tính tương thích của phần mềm với các hệ điều hành khác nhau.
D. Đảm bảo mã nguồn tuân thủ các tiêu chuẩn coding.

11. Trong kiểm thử hiệu năng, `throughput` là gì?

A. Thời gian phản hồi của hệ thống.
B. Số lượng giao dịch hoặc yêu cầu mà hệ thống có thể xử lý trong một khoảng thời gian nhất định.
C. Mức sử dụng CPU của hệ thống.
D. Dung lượng bộ nhớ mà hệ thống sử dụng.

12. Trong kiểm thử phần mềm, `bug` và `fault` khác nhau như thế nào?

A. `Bug` là lỗi do người dùng gây ra, `fault` là lỗi do lập trình viên gây ra.
B. `Bug` là nguyên nhân gây ra lỗi, `fault` là biểu hiện của lỗi.
C. `Bug` là lỗi trong tài liệu đặc tả, `fault` là lỗi trong mã nguồn.
D. `Fault` là nguyên nhân gây ra lỗi, `bug` là biểu hiện của lỗi.

13. Trong ngữ cảnh kiểm thử bảo mật, SQL injection là gì?

A. Một kỹ thuật mã hóa dữ liệu.
B. Một loại tấn công bằng cách chèn mã SQL độc hại vào các truy vấn.
C. Một phương pháp kiểm tra hiệu năng của cơ sở dữ liệu.
D. Một công cụ quản lý cơ sở dữ liệu.

14. Mục đích của kiểm thử chấp nhận (Acceptance testing) là gì?

A. Đảm bảo mã nguồn tuân thủ các quy tắc coding.
B. Xác minh phần mềm đáp ứng yêu cầu của người dùng cuối.
C. Kiểm tra hiệu năng của phần mềm dưới tải cao.
D. Tìm kiếm các lỗ hổng bảo mật.

15. Khi nào nên sử dụng kiểm thử thăm dò (Exploratory testing)?

A. Khi có đầy đủ tài liệu đặc tả yêu cầu.
B. Khi thời gian kiểm thử có hạn và cần tập trung vào các khu vực rủi ro cao.
C. Khi cần kiểm tra tính tuân thủ theo tiêu chuẩn.
D. Khi cần tự động hóa các test case.

16. Kỹ thuật kiểm thử nào sau đây là một kỹ thuật kiểm thử hộp trắng?

A. Phân tích giá trị biên (Boundary Value Analysis).
B. Phân vùng tương đương (Equivalence Partitioning).
C. Kiểm thử đường dẫn cơ sở (Basis Path Testing).
D. Kiểm thử dựa trên bảng quyết định (Decision Table Testing).

17. Đâu là mục tiêu chính của kiểm thử hộp đen?

A. Kiểm tra cấu trúc bên trong của mã nguồn.
B. Xác minh rằng phần mềm hoạt động theo đặc tả yêu cầu.
C. Đảm bảo tất cả các dòng code đều được thực thi ít nhất một lần.
D. Tìm kiếm các lỗi cú pháp trong mã nguồn.

18. Sự khác biệt chính giữa kiểm thử Alpha và kiểm thử Beta là gì?

A. Kiểm thử Alpha do lập trình viên thực hiện, kiểm thử Beta do kiểm thử viên thực hiện.
B. Kiểm thử Alpha thực hiện tại môi trường của nhà phát triển, kiểm thử Beta thực hiện tại môi trường của người dùng cuối.
C. Kiểm thử Alpha tập trung vào chức năng, kiểm thử Beta tập trung vào hiệu năng.
D. Kiểm thử Alpha là kiểm thử hộp trắng, kiểm thử Beta là kiểm thử hộp đen.

19. Kiểm thử Ad-hoc là gì?

A. Kiểm thử được thực hiện theo kế hoạch và tài liệu cụ thể.
B. Kiểm thử được thực hiện ngẫu nhiên, không có kế hoạch trước.
C. Kiểm thử chỉ thực hiện trên các thiết bị di động.
D. Kiểm thử tự động.

20. Phương pháp kiểm thử nào sau đây phù hợp nhất để kiểm tra các giao diện người dùng?

A. Kiểm thử đơn vị.
B. Kiểm thử tích hợp.
C. Kiểm thử hệ thống.
D. Kiểm thử chấp nhận.

21. Trong kiểm thử phần mềm, `defect density` (mật độ lỗi) là gì?

A. Số lượng lỗi được phát hiện trong một khoảng thời gian nhất định.
B. Số lượng lỗi trên một đơn vị kích thước của phần mềm (ví dụ: số lỗi trên 1000 dòng code).
C. Mức độ nghiêm trọng của các lỗi được phát hiện.
D. Số lượng kiểm thử viên tham gia vào dự án.

22. Khi nào nên sử dụng kiểm thử tự động (test automation)?

A. Chỉ khi dự án có ngân sách lớn.
B. Khi cần thực hiện kiểm thử hồi quy thường xuyên và có nhiều test case lặp đi lặp lại.
C. Khi cần kiểm thử các chức năng phức tạp của phần mềm.
D. Khi không có đủ kiểm thử viên thủ công.

23. Mô hình V-model trong kiểm thử phần mềm thể hiện điều gì?

A. Mối quan hệ giữa chi phí và thời gian kiểm thử.
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. Quy trình quản lý rủi ro trong dự án phần mềm.
D. Vòng đời của một lỗi phần mềm.

24. Khi nào nên sử dụng kỹ thuật `pairwise testing` (kiểm thử cặp)?

A. Khi có ít thời gian kiểm thử và cần kiểm tra tất cả các tổ hợp đầu vào.
B. Khi có nhiều tham số đầu vào và cần giảm số lượng test case mà vẫn đảm bảo độ bao phủ.
C. Khi cần kiểm tra hiệu năng của hệ thống.
D. Khi cần kiểm tra bảo mật của hệ thống.

25. Sự khác biệt chính giữa kiểm thử tải (load testing) và kiểm thử stress (stress testing) là gì?

A. Kiểm thử tải kiểm tra chức năng, kiểm thử stress kiểm tra hiệu năng.
B. Kiểm thử tải kiểm tra hệ thống dưới tải thông thường, kiểm thử stress kiểm tra hệ thống dưới tải cực đại.
C. Kiểm thử tải thực hiện bởi kiểm thử viên, kiểm thử stress thực hiện bởi lập trình viên.
D. Kiểm thử tải là kiểm thử hộp đen, kiểm thử stress là kiểm thử hộp trắng.

26. Tại sao cần ưu tiên kiểm thử các module có độ phức tạp cao?

A. Vì các module này thường được phát triển bởi các lập trình viên có kinh nghiệm.
B. Vì các module này thường chứa nhiều dòng code hơn.
C. Vì các module này có khả năng chứa nhiều lỗi hơn và ảnh hưởng lớn đến hệ thống.
D. Vì các module này dễ kiểm thử hơn.

27. Trong kiểm thử phần mềm, `test oracle` là gì?

A. Một công cụ tự động tạo test case.
B. Một cơ chế để xác định kết quả mong đợi của một test case.
C. Một báo cáo tổng hợp kết quả kiểm thử.
D. Một quy trình quản lý rủi ro kiểm thử.

28. Khi nào nên thực hiện kiểm thử chấp nhận người dùng (User Acceptance Testing - UAT)?

A. Trước khi bắt đầu phát triển phần mềm.
B. Sau khi kiểm thử đơn vị hoàn thành.
C. Trước khi triển khai phần mềm lên môi trường production và sau khi kiểm thử hệ thống hoàn thành.
D. Sau khi phần mềm đã được triển khai.

29. Kiểm thử hồi quy (Regression testing) được thực hiện khi nào?

A. Chỉ khi phát hiện lỗi nghiêm trọng.
B. Sau khi mã nguồn được tối ưu hóa về hiệu năng.
C. Sau khi thực hiện các thay đổi mã nguồn để đảm bảo các chức năng cũ vẫn hoạt động đúng.
D. Trước khi phát hành phiên bản beta cho người dùng.

30. Use case testing là gì?

A. Kiểm thử các trường hợp sử dụng để đảm bảo phần mềm hoạt động đúng theo yêu cầu của người dùng.
B. Kiểm thử hiệu năng của phần mềm khi có nhiều người dùng đồng thời.
C. Kiểm thử khả năng sử dụng của phần mềm trên các thiết bị khác nhau.
D. Kiểm thử bảo mật của phần mềm trước các cuộc tấn công.

1 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

1. Tại sao việc quản lý test case lại quan trọng trong kiểm thử phần mềm?

2 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

2. Phân tích giá trị biên (Boundary Value Analysis) là kỹ thuật kiểm thử dựa trên nguyên tắc nào?

3 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

3. Phương pháp kiểm thử nào sau đây giúp phát hiện các vấn đề về bộ nhớ (memory leaks) trong ứng dụng?

4 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

4. Lợi ích chính của việc sử dụng công cụ quản lý kiểm thử (test management tool) là gì?

5 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

5. Tại sao việc ước lượng thời gian kiểm thử lại quan trọng?

6 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

6. Độ bao phủ mã (Code coverage) là gì?

7 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

7. Kiểm thử khói (Smoke testing) thường được thực hiện ở giai đoạn nào?

8 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

8. Sự khác biệt giữa 'verification' và 'validation' trong kiểm thử phần mềm là gì?

9 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

9. Mục tiêu chính của việc viết báo cáo lỗi (bug report) là gì?

10 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

10. Kiểm thử hiệu năng (Performance testing) nhằm mục đích gì?

11 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

11. Trong kiểm thử hiệu năng, 'throughput' là gì?

12 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

12. Trong kiểm thử phần mềm, 'bug' và 'fault' khác nhau như thế nào?

13 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

13. Trong ngữ cảnh kiểm thử bảo mật, SQL injection là gì?

14 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

14. Mục đích của kiểm thử chấp nhận (Acceptance testing) là gì?

15 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

15. Khi nào nên sử dụng kiểm thử thăm dò (Exploratory testing)?

16 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

16. Kỹ thuật kiểm thử nào sau đây là một kỹ thuật kiểm thử hộp trắng?

17 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

17. Đâu là mục tiêu chính của kiểm thử hộp đen?

18 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

18. Sự khác biệt chính giữa kiểm thử Alpha và kiểm thử Beta là gì?

19 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

19. Kiểm thử Ad-hoc là gì?

20 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

20. Phương pháp kiểm thử nào sau đây phù hợp nhất để kiểm tra các giao diện người dùng?

21 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

21. Trong kiểm thử phần mềm, 'defect density' (mật độ lỗi) là gì?

22 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

22. Khi nào nên sử dụng kiểm thử tự động (test automation)?

23 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

23. Mô hình V-model trong kiểm thử phần mềm thể hiện điều gì?

24 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

24. Khi nào nên sử dụng kỹ thuật 'pairwise testing' (kiểm thử cặp)?

25 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

25. Sự khác biệt chính giữa kiểm thử tải (load testing) và kiểm thử stress (stress testing) là gì?

26 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

26. Tại sao cần ưu tiên kiểm thử các module có độ phức tạp cao?

27 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

27. Trong kiểm thử phần mềm, 'test oracle' là gì?

28 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

28. Khi nào nên thực hiện kiểm thử chấp nhận người dùng (User Acceptance Testing - UAT)?

29 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

29. Kiểm thử hồi quy (Regression testing) được thực hiện khi nào?

30 / 30

Category: Kiểm thử phần mềm

Tags: Bộ đề 9

30. Use case testing là gì?