Tất cả câu hỏi
Ngân hàng câu hỏi trắc nghiệm có giải thích chi tiết.
15.820/15.837 câuCòn 17
15801Which activity in the fundamental test process creates test suites for efficient test execution?4 lựa chọn
AImplementation and execution.
BPlanning and control.
CAnalysis and design.
DTest closure.
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "Implementation and execution.". Trong quy trình kiểm thử cơ bản của ISTQB, giai đoạn thực hiện và thực thi bắt đầu bằng việc hoàn thiện ca kiểm thử thành thủ tục kiểm thử (test procedure), chuẩn bị dữ liệu, viết kịch bản tự động và gom các thủ tục thành bộ kiểm thử (test suite) để thực thi hiệu quả, sau đó mới chạy và ghi kết quả. "Planning and control." xác định mục tiêu, phạm vi, cách tiếp cận, nguồn lực và theo dõi tiến độ, lúc đó chưa có ca kiểm thử cụ thể nào để gom. "Analysis and design." rà soát cơ sở kiểm thử, xác định điều kiện kiểm thử, thiết kế ca kiểm thử mức cao và môi trường kiểm thử, còn việc xếp chúng thành bộ để chạy diễn ra ở bước sau. "Test closure." diễn ra khi đã kiểm thử xong: kiểm tra sản phẩm bàn giao, lưu trữ testware, rút kinh nghiệm.
15802Which is the non-functional testing4 lựa chọn
APerformance testing
BUnit testing
CRegression testing
DSanity testing
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "Performance testing". Kiểm thử phi chức năng (non-functional testing) kiểm tra hệ thống hoạt động tốt đến mức nào, tức các đặc tính chất lượng như hiệu năng, tải, khả năng chịu áp lực, tính dùng được, độ tin cậy, bảo mật, chứ không phải hệ thống làm được gì. Kiểm thử hiệu năng đo thời gian phản hồi, thông lượng, mức dùng tài nguyên nên là ví dụ điển hình của loại này. "Unit testing" là một cấp kiểm thử (kiểm thử thành phần), có thể chứa cả kiểm thử chức năng lẫn phi chức năng, bản thân nó không phải một loại kiểm thử phi chức năng. "Regression testing" là kiểm thử liên quan đến thay đổi, chạy lại ca cũ sau khi sửa đổi để phát hiện lỗi mới phát sinh, không gắn với đặc tính chất lượng nào. "Sanity testing" là phép kiểm nhanh các chức năng chính xem bản dựng có đủ ổn định để kiểm sâu hơn, mang tính chức năng.
ALog defects
BExplain the documents to the participants
CGather metrics
DAllocate the individual roles
Lời giải
Mở trang câu hỏi này →Phán đấu kỷ luật là một trong các bài toán quan trọng trong kỷ luật. Một trong các mật máy kỷ luật quan trọng nhất là một trong các bài toán kỷ luật. Phán đấu kỷ luật được sử dụng để đảm bảo an toàn cho các kỷ luật, bổ sung kỷ luật, và đảm bảo kỷ luật được hiểu rõ và thực hiện đúng cách. Phán đấu kỷ luật có các bài toán quan trọng như: phán đấu kỷ luật, kỷ luật hoạt động, kỷ luật đã quản lý, và kỷ luật đã được thực hiện.
15804Which of the following is a Static test?4 lựa chọn
ACode inspection
BCoverage analysis
CUsability assessment
DInstallation test
Lời giải
Mở trang câu hỏi này →Static test là một loại kiểm thử phần mềm mà không cần thực hiện các thử nghiệm trên hệ thống hoặc phần mềm đang chạy. Thay vào đó, nó tập trung vào việc kiểm tra mã nguồn, cấu trúc và thiết kế của phần mềm. Code inspection là một ví dụ về static test, trong đó các nhà phát triển và chuyên gia kiểm thử xem xét mã nguồn để tìm kiếm các lỗi, sai sót và cải thiện chất lượng phần mềm. Quá trình này giúp phát hiện các vấn đề tiềm ẩn và cải thiện tính bảo mật, hiệu suất và độ tin cậy của phần mềm. Code inspection thường được thực hiện bằng cách sử dụng các công cụ và kỹ thuật như phân tích mã nguồn, kiểm tra lỗi và phân tích thiết kế.
ATest case specification
BTest design specification
CTest procedure specification
DTest results
Lời giải
Mở trang câu hỏi này →Để xác định kết quả mong đợi của một thử nghiệm, chúng ta cần xem xét các khái niệm liên quan đến quy trình thử nghiệm. Test case specification là một phần quan trọng trong quy trình thử nghiệm, nó mô tả các trường hợp thử nghiệm cụ thể mà một sản phẩm hoặc hệ thống cần phải đáp ứng. Điều này bao gồm các yêu cầu chức năng, các ràng buộc kỹ thuật và các điều kiện ngoại cảnh mà sản phẩm hoặc hệ thống cần phải đáp ứng. Test case specification giúp xác định các trường hợp thử nghiệm cụ thể mà một sản phẩm hoặc hệ thống cần phải đáp ứng, từ đó giúp xác định kết quả mong đợi của một thử nghiệm. Nói cách khác, test case specification giúp xác định các tiêu chí đánh giá để xác định xem một sản phẩm hoặc hệ thống có đáp ứng được các yêu cầu chức năng và kỹ thuật hay không.
AState analysis
BCoverage analysis
CDynamic analysis
DMemory analysis
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "Dynamic analysis". Rò rỉ bộ nhớ (memory leak) xảy ra khi chương trình cấp phát bộ nhớ mà không giải phóng, chỉ lộ ra khi phần mềm đang chạy và tích tụ dần theo thời gian; công cụ phân tích động (dynamic analysis tool) theo dõi chương trình lúc thực thi, ghi lại từng lần cấp phát và giải phóng, nên ISTQB xếp việc phát hiện rò rỉ bộ nhớ vào nhóm công cụ này. "State analysis" không phải tên một nhóm công cụ kiểm thử; phân tích trạng thái là cách mô hình hóa hành vi, không đo việc dùng bộ nhớ. "Coverage analysis" đo phần mã đã được chạy bởi các ca kiểm thử, không theo dõi cấp phát bộ nhớ. "Memory analysis" nghe gần đúng nhưng không phải tên nhóm trong phân loại công cụ của ISTQB; các trình theo dõi bộ nhớ thực chất là một dạng công cụ phân tích động, nên tên nhóm đúng vẫn là phân tích động.
15807Which of the following is a black box design technique?4 lựa chọn
AStatement testing
BEquivalence partitioning
CError guessing
DUsability testing
Lời giải
Mở trang câu hỏi này →Black box design là một kỹ thuật kiểm thử phần mềm mà trong đó, người kiểm thử không biết về chi tiết nội bộ của sản phẩm. Họ chỉ biết về các yêu cầu và chức năng của sản phẩm. Trong đó, Equivalence partitioning là một kỹ thuật kiểm thử black box, nó liên quan đến việc phân chia các giá trị đầu vào thành các nhóm tương đương (equivalence partition) dựa trên các yêu cầu và chức năng của sản phẩm. Mục đích của kỹ thuật này là xác định các giá trị đầu vào có thể dẫn đến các kết quả mong muốn và các giá trị đầu vào có thể dẫn đến các kết quả không mong muốn. Điều này giúp người kiểm thử xác định các trường hợp kiểm thử cần thiết để đảm bảo sản phẩm hoạt động đúng như mong đợi.
AData tester
BBoundary tester
CCapture/Playback
DOutput comparator.
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "Capture/Playback". Công cụ ghi và phát lại (capture/playback) ghi lại thao tác của người kiểm thử thành kịch bản rồi chạy lại tự động bao nhiêu lần cũng được, nên là công cụ thực thi kiểm thử điển hình dùng để tự động hoá kiểm thử hồi quy (regression test), loại kiểm thử phải lặp lại sau mỗi lần thay đổi. "Output comparator." chỉ so sánh kết quả thực tế với kết quả mong đợi; nó hỗ trợ kiểm thử tự động nhưng tự nó không chạy được các ca kiểm thử, nên không phải công cụ chính để tự động hoá hồi quy. "Data tester" gợi tới việc chuẩn bị hoặc kiểm tra dữ liệu kiểm thử, phục vụ khâu chuẩn bị chứ không phát lại kiểm thử. "Boundary tester" gợi tới thiết kế ca kiểm thử theo giá trị biên, là khâu thiết kế chứ không phải tự động thực thi lặp lại.
AScenario, Dry Run, Peer Group
BPre Meeting Preparations
CFormal Follow Up Process
DIncludes Metrics
Lời giải
Mở trang câu hỏi này →Walkthrough là một kỹ thuật đánh giá và cải thiện quy trình hoặc hệ thống. Một trong những đặc điểm chính của walkthrough là nó thường được thực hiện trong một kịch bản cụ thể (Scenario), nơi các bên liên quan sẽ mô tả và thảo luận về các bước thực hiện trong quy trình. Điều này giúp đảm bảo rằng tất cả các bên hiểu rõ về quy trình và có thể nhận ra bất kỳ điểm yếu nào. Ngoài ra, walkthrough thường bao gồm một phiên bản thử nghiệm (Dry Run), nơi các bên sẽ thực hiện các bước trong quy trình để xác định bất kỳ vấn đề nào. Cuối cùng, walkthrough thường được thực hiện trong một nhóm (Peer Group), nơi các bên có thể chia sẻ kinh nghiệm và kiến thức của mình để cải thiện quy trình.
AEstimating test duration
BIncident Management
CConfiguration Management
DDebugging
Lời giải
Mở trang câu hỏi này →Test management là quá trình quản lý và giám sát quá trình thử nghiệm phần mềm. Có bốn khía cạnh quan trọng trong test management: Estimating test duration (Đo lường thời gian thử nghiệm), Incident Management (Quản lý sự cố), Configuration Management (Quản lý cấu hình) và Debugging (Khắc phục lỗi). Trong đó, Debugging là một phần quan trọng của quá trình thử nghiệm, nhưng nó không phải là một phần của test management. Debugging là một quá trình riêng biệt để tìm và sửa lỗi trong phần mềm. Vì vậy, Debugging là yếu tố ít quan trọng nhất trong test management.
AOperability
BObservability
CSimplicity
DRobustness
Lời giải
Mở trang câu hỏi này →Testability là một khái niệm quan trọng trong lĩnh vực thiết kế và phát triển phần mềm. Nó đề cập đến khả năng kiểm tra và xác minh tính đúng đắn của một hệ thống hoặc phần mềm. Có ba đặc điểm chính của Testability: Operability, Observability và Simplicity. Operability đề cập đến khả năng thực hiện các hoạt động kiểm tra và thử nghiệm một cách dễ dàng. Observability đề cập đến khả năng theo dõi và quan sát các hoạt động của hệ thống hoặc phần mềm. Simplicity đề cập đến khả năng giảm thiểu sự phức tạp của hệ thống hoặc phần mềm để dễ dàng kiểm tra và thử nghiệm. Robustness, mặt khác, đề cập đến khả năng chịu đựng và phục hồi của hệ thống hoặc phần mềm trước các lỗi và sự cố. Mặc dù Robustness là một đặc điểm quan trọng trong thiết kế phần mềm, nhưng nó không phải là một đặc điểm của Testability. Vì vậy, Robustness là không phải là một đặc điểm của Testability.
ASystem integration
BFunctional testing
CNon-functional testing
DRequirements testing
Lời giải
Mở trang câu hỏi này →Khi phát triển một giải pháp internet banking, việc kiểm thử (testing) là một phần quan trọng để đảm bảo rằng hệ thống hoạt động đúng và an toàn. Trong trường hợp này, có bốn loại kiểm thử được đề cập: System integration, Functional testing, Non-functional testing và Requirements testing.
System integration testing là quá trình kiểm thử để đảm bảo rằng các thành phần của hệ thống được tích hợp đúng và hoạt động như mong đợi. Điều này bao gồm kiểm thử giao diện giữa các thành phần và đảm bảo rằng dữ liệu được truyền tải chính xác.
Functional testing là quá trình kiểm thử để đảm bảo rằng hệ thống thực hiện các chức năng như mong đợi. Điều này bao gồm kiểm thử các tính năng cụ thể của hệ thống, chẳng hạn như đăng nhập, chuyển tiền và xem lịch sử giao dịch.
Non-functional testing là quá trình kiểm thử để đảm bảo rằng hệ thống đáp ứng các yêu cầu không chức năng, chẳng hạn như hiệu suất, độ tin cậy, bảo mật và khả năng mở rộng. Điều này bao gồm kiểm thử các tính năng như thời gian tải trang, số lượng người dùng đồng thời và khả năng chịu lỗi.
Requirements testing là quá trình kiểm thử để đảm bảo rằng hệ thống đáp ứng các yêu cầu chức năng và không chức năng. Điều này bao gồm kiểm thử các tính năng cụ thể của hệ thống và đảm bảo rằng chúng đáp ứng các yêu cầu của khách hàng.
Trong trường hợp này, Non-functional testing là loại kiểm thử phù hợp nhất vì nó bao gồm các yếu tố quan trọng như bảo mật, hiệu suất và độ tin cậy, mà internet banking solution cần phải đáp ứng.
15813What type of tools to be used for Regression Testing?4 lựa chọn
APerformance tools
BRecord/Playback tools
CBoth Performance and Record/Playback
DNeither Performance nor Record/Playback
Lời giải
Mở trang câu hỏi này →Regression testing là một phần quan trọng của quá trình kiểm thử phần mềm, giúp đảm bảo rằng các thay đổi hoặc cập nhật trong mã nguồn không ảnh hưởng đến các chức năng đã tồn tại. Để thực hiện regression testing, các kỹ sư kiểm thử thường sử dụng các công cụ Record/Playback. Công cụ này cho phép họ ghi lại các kịch bản kiểm thử và sau đó tái tạo chúng một cách tự động, giúp tiết kiệm thời gian và tăng hiệu suất kiểm thử. Ngoài ra, Record/Playback tools còn cung cấp khả năng tự động hóa các kịch bản kiểm thử, giúp giảm thiểu sự can thiệp của con người và tăng độ chính xác của kết quả kiểm thử. Tuy nhiên, Performance tools không phải là lựa chọn phù hợp cho regression testing vì chúng tập trung vào việc đo lường hiệu suất của hệ thống, thay vì kiểm tra các chức năng cụ thể. Vì vậy, đáp án đúng là Record/Playback tools.
AUnit, integration, system, validation
BSystem, integration, unit, validation
CUnit, integration, validation, system
DNone of the above
Lời giải
Mở trang câu hỏi này →Quá trình kiểm thử phần mềm được tổ chức theo một thứ tự nhất định để đảm bảo hiệu quả và hiệu suất cao. Thứ tự thông thường của các hoạt động trong kiểm thử phần mềm là: Unit, Integration, System, Validation.
- Unit testing: Đây là giai đoạn đầu tiên trong quá trình kiểm thử phần mềm, nơi các đơn vị nhỏ nhất của phần mềm được kiểm tra để đảm bảo chúng hoạt động đúng như mong đợi.
- Integration testing: Sau khi hoàn thành unit testing, các đơn vị được tích hợp lại với nhau để kiểm tra xem chúng có hoạt động đúng khi kết hợp với nhau hay không.
- System testing: Ở giai đoạn này, toàn bộ hệ thống phần mềm được kiểm tra để đảm bảo nó hoạt động đúng và đáp ứng được các yêu cầu của khách hàng.
- Validation: Cuối cùng, quá trình kiểm thử phần mềm được hoàn thiện bằng giai đoạn validation, nơi phần mềm được kiểm tra để đảm bảo nó đáp ứng được các yêu cầu và tiêu chuẩn của khách hàng.
Thứ tự này giúp đảm bảo rằng phần mềm được kiểm tra một cách toàn diện và hiệu quả, từ đơn vị nhỏ nhất đến toàn bộ hệ thống.
ACompiling code is not a form of static analysis
BStatic analysis need not be performed before imperative code is executed
CStatic analysis can find faults that are hard to find with dynamic testing
DExtensive statistical analysis will not be needed if white-box testing is to be performed
Lời giải
Mở trang câu hỏi này →Static analysis là một kỹ thuật kiểm tra mã nguồn mà không cần thực thi mã đó. Nó giúp phát hiện các lỗi và vấn đề trong mã nguồn mà không cần chạy chương trình. Static analysis có thể được thực hiện bằng cách sử dụng các công cụ và công nghệ khác nhau, chẳng hạn như linter, kiểm tra mã nguồn, và phân tích mã nguồn.
Một trong những lợi ích chính của static analysis là nó có thể tìm thấy các lỗi và vấn đề mà khó phát hiện bằng cách kiểm tra động (dynamic testing). Kiểm tra động là một kỹ thuật kiểm tra mã nguồn bằng cách thực thi chương trình và quan sát hành vi của nó. Tuy nhiên, kiểm tra động có thể không phát hiện được các lỗi và vấn đề mà không thể được tái tạo hoặc không thể được phát hiện bằng cách kiểm tra mã nguồn.
Static analysis có thể được sử dụng để phát hiện các lỗi và vấn đề trong mã nguồn, chẳng hạn như:
- Lỗi logic: Static analysis có thể giúp phát hiện các lỗi logic trong mã nguồn, chẳng hạn như các lỗi trong điều kiện if-else hoặc các lỗi trong việc sử dụng các biến.
- Lỗi syntax: Static analysis có thể giúp phát hiện các lỗi syntax trong mã nguồn, chẳng hạn như các lỗi trong việc sử dụng các ký tự đặc biệt hoặc các lỗi trong việc khai báo các biến.
- Lỗi bảo mật: Static analysis có thể giúp phát hiện các lỗi bảo mật trong mã nguồn, chẳng hạn như các lỗi trong việc sử dụng các hàm bảo mật hoặc các lỗi trong việc xử lý các dữ liệu nhạy cảm.
Tóm lại, static analysis là một kỹ thuật kiểm tra mã nguồn mà không cần thực thi mã đó. Nó giúp phát hiện các lỗi và vấn đề trong mã nguồn mà không cần chạy chương trình và có thể tìm thấy các lỗi và vấn đề mà khó phát hiện bằng cách kiểm tra động.
15816Which of the following is true?4 lựa chọn
AComponent testing should be black box, system testing should be white box
BIf you find a lot of bugs in testing, you should not be very confident about the quality of software
CThe fewer bugs you find, the better your testing was
DThe more tests you run, the more bugs you will find
Lời giải
Mở trang câu hỏi này →Trong lĩnh vực kiểm thử phần mềm, có một số nguyên tắc quan trọng cần lưu ý. Trước hết, về nguyên tắc kiểm thử phần mềm, có hai loại kiểm thử chính: kiểm thử đen (black box) và kiểm thử trắng (white box). Kiểm thử đen liên quan đến việc kiểm tra phần mềm mà không biết về mã nguồn, trong khi kiểm thử trắng liên quan đến việc kiểm tra phần mềm dựa trên kiến thức về mã nguồn. Trong câu hỏi, câu trả lời đúng là "Nếu bạn tìm thấy nhiều lỗi trong quá trình kiểm thử, bạn không nên quá tự tin về chất lượng phần mềm". Điều này có nghĩa là nếu bạn tìm thấy nhiều lỗi trong quá trình kiểm thử, điều đó có thể cho thấy rằng phần mềm chưa được kiểm tra kỹ lưỡng hoặc chưa được thử nghiệm đầy đủ. Vì vậy, bạn không nên quá tự tin về chất lượng phần mềm mà không có sự kiểm tra và thử nghiệm đầy đủ.
15817If an expected result is not specified then:4 lựa chọn
AWe cannot run the test
BIt may be difficult to repeat the test
CIt may be difficult to determine if the test has passed or failed
DWe cannot automate the user inputs
Lời giải
Mở trang câu hỏi này →Khi một kết quả mong đợi không được chỉ định, điều quan trọng cần xem xét là cách chúng ta có thể xác định xem thử nghiệm đã thành công hay không. Nếu không có kết quả mong đợi, chúng ta không thể biết được liệu thử nghiệm đã đạt được mục tiêu hay không. Điều này có thể dẫn đến khó khăn trong việc xác định xem thử nghiệm đã thành công hay không, vì chúng ta không có tiêu chuẩn để đánh giá kết quả. Trong trường hợp này, câu trả lời đúng là "It may be difficult to determine if the test has passed or failed" vì nó phản ánh chính xác vấn đề này.
15818Defect Management process does not include4 lựa chọn
ADefect prevention
BDeliverable base-lining
CManagement reporting
DNone of the others
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "None of the others". Theo mô hình quản lý lỗi của QAI, quy trình quản lý lỗi (defect management process) gồm các bước phòng ngừa lỗi (defect prevention), thiết lập đường cơ sở cho sản phẩm bàn giao (deliverable baselining), phát hiện lỗi (defect discovery), giải quyết lỗi (defect resolution), cải tiến quy trình (process improvement) và báo cáo quản lý (management reporting); cả ba mục được nêu đều nằm trong quy trình nên không có mục nào bị loại. Chỗ dễ tranh cãi là "Deliverable base-lining": nhiều tài liệu ôn tập chọn nó vì nghe giống việc quản lý cấu hình, nhưng trong mô hình này nó là một bước chính thức, xác định thời điểm một sản phẩm được coi là hoàn tất để từ đó mọi sai lệch mới tính là lỗi. "Defect prevention" thuộc quy trình vì là bước đầu, giảm rủi ro lỗi xuất hiện. "Management reporting" thuộc quy trình vì là bước cuối, đưa số liệu lỗi lên quản lý để ra quyết định.
15819Which rule should not be followed for reviews4 lựa chọn
ADefects and issues are identified and corrected
BThe product is reviewed not the producer
CAll members of the reviewing team are responsible for the result of the review
DEach review has a clear predefined objective
Lời giải
Mở trang câu hỏi này →Đáp án đúng: "Defects and issues are identified and corrected". Câu hỏi tìm quy tắc không nên tuân theo. Trong review, nhiệm vụ của buổi họp là phát hiện và ghi nhận khuyết tật, vấn đề chứ không sửa chúng ngay tại chỗ; việc sửa thuộc bước làm lại (rework) do tác giả thực hiện sau buổi họp, nếu vừa tìm vừa sửa thì cuộc họp sa vào bàn giải pháp và mất trọng tâm. Các phát biểu kia đều là quy tắc đúng nên không được chọn. "The product is reviewed not the producer" là nguyên tắc cốt lõi: đánh giá sản phẩm chứ không phán xét con người, giúp tác giả không phòng thủ. "All members of the reviewing team are responsible for the result of the review" đúng vì chất lượng review là trách nhiệm chung của cả nhóm chứ không riêng tác giả hay moderator. "Each review has a clear predefined objective" đúng vì mục tiêu rõ ràng định trước là một yếu tố thành công của review theo ISTQB.
15820Which test may not mimic real world situations?4 lựa chọn
AFunctional testing
BStructural Testing
CBoth Functional and Structural testing
DNeither Functional nor Structural testing
Lời giải
Mở trang câu hỏi này →Functional testing và Structural testing là hai loại thử nghiệm phổ biến trong lĩnh vực kiểm thử phần mềm. Functional testing tập trung vào việc kiểm tra các chức năng cụ thể của phần mềm, chẳng hạn như nhập liệu, xuất dữ liệu, tính toán, v.v. Mục tiêu của việc kiểm tra chức năng là đảm bảo rằng phần mềm hoạt động đúng như mong đợi.
Structural testing, còn được gọi là kiểm thử cấu trúc, tập trung vào việc kiểm tra các thành phần cấu trúc của phần mềm, chẳng hạn như các hàm, các lớp, các phương thức, v.v. Mục tiêu của việc kiểm tra cấu trúc là đảm bảo rằng phần mềm được xây dựng theo các nguyên tắc tốt nhất và không có lỗi logic.
Tuy nhiên, cả hai loại thử nghiệm này đều có hạn chế. Functional testing chỉ kiểm tra các chức năng cụ thể, nhưng không kiểm tra được các trường hợp ngoại lệ hoặc các tình huống không mong đợi. Structural testing chỉ kiểm tra các thành phần cấu trúc, nhưng không kiểm tra được các chức năng cụ thể.
Vì vậy, cả Functional testing và Structural testing đều không thể mô phỏng được các tình huống thực tế trong thế giới thực. Để mô phỏng được các tình huống thực tế, cần phải thực hiện các thử nghiệm khác như User Acceptance Testing (UAT), Performance Testing, v.v.
Tóm lại, cả Functional testing và Structural testing đều không thể mô phỏng được các tình huống thực tế trong thế giới thực.