Đáp án đúng: A. Khi thời gian và nguồn lực có hạn, kiểm thử phải được ưu tiên theo rủi ro. Hai định hướng đúng là kiểm thử những vùng trọng yếu nhất với quy trình nghiệp vụ (1) và những vùng có khả năng chứa nhiều lỗi nhất (2) - nguyên lý "defect clustering" cho biết lỗi thường dồn vào một số ít mô-đun. Định hướng (3), kiểm thử những chức năng dễ nhất, là sai vì nó tiêu tốn công sức vào phần ít rủi ro và bỏ sót phần nguy hiểm. Vì vậy 1 và 2 đúng, 3 sai, tức phương án A; các phương án còn lại hoặc công nhận (3) hoặc phủ nhận (1), (2) nên đều không đạt.
Quiz: SWT301_SU26_B5_RE - Có đáp án và giải thích chi tiết, ôn tập ngay!
Phiên có lưu tiến độ dùng toàn bộ 60 câu của bộ đề để tiến độ khớp với máy chủ.
Bạn cần đăng nhập để bắt đầu làm bài và lưu tiến độ.
60
Không giới hạn
0
60
60
Xem trước câu hỏi
Khi so sánh việc kiểm tra phần mềm được phát triển bởi nhà thầu bên ngoài nước bạn và nhà thầu bên trong nước bạn, có một số điểm khác biệt quan trọng cần xem xét. Đầu tiên, việc kiểm tra phần mềm được phát triển bởi nhà thầu bên ngoài nước bạn có thể gặp phải những thách thức liên quan đến ngôn ngữ và văn hóa. Điều này có thể dẫn đến sự hiểu lầm và sai sót trong quá trình kiểm tra. Mặt khác, việc kiểm tra phần mềm được phát triển bởi nhà thầu bên trong nước bạn có thể giúp bạn kiểm soát tốt hơn về mặt ngôn ngữ và văn hóa, từ đó đảm bảo rằng phần mềm đáp ứng được nhu cầu của người dùng.
PDCA là một phương pháp quản lý chất lượng được sử dụng rộng rãi trong nhiều lĩnh vực, bao gồm sản xuất, dịch vụ và quản lý. PDCA là viết tắt của Plan, Do, Check, Act, có nghĩa là Lập kế hoạch, Thực hiện, Kiểm tra, Hành động. Phương pháp này được phát triển bởi Walter A. Shewhart vào năm 1931 và sau đó được phổ biến bởi W. Edwards Deming vào những năm 1950. PDCA là một vòng tròn liên tục, bắt đầu từ việc lập kế hoạch (Plan) để thực hiện một hành động hoặc dự án. Sau đó, hành động được thực hiện (Do) và sau đó được kiểm tra (Check) để xác định xem nó đã đạt được mục tiêu hay chưa. Nếu mục tiêu chưa đạt được, sẽ có hành động cần được thực hiện (Act) để điều chỉnh và cải thiện. Phương pháp PDCA giúp các tổ chức và cá nhân có thể liên tục cải thiện và phát triển, bằng cách: * Lập kế hoạch rõ ràng và cụ thể * Thực hiện kế hoạch một cách có trách nhiệm * Kiểm tra và đánh giá kết quả * Hành động để điều chỉnh và cải thiện PDCA là một phương pháp quản lý chất lượng hiệu quả, giúp các tổ chức và cá nhân có thể đạt được mục tiêu và cải thiện liên tục.
Đáp án đúng: C. Kiểm thử chỉ nên dừng khi các tiêu chí hoàn thành (test completion criteria / exit criteria) đã được thoả mãn, bởi đó là thước đo khách quan đã thống nhất từ khi lập kế hoạch. Hết thời gian (A) hay chạy xong toàn bộ ca kiểm thử đã lập (B) chỉ là điều kiện hành chính, không nói lên chất lượng sản phẩm. Không tìm thấy lỗi nào (D) càng nguy hiểm vì có thể do bộ ca kiểm thử yếu chứ không phải phần mềm tốt - kiểm thử không chứng minh được sự vắng mặt của lỗi.
Đáp án đúng: A. Tiêu chí đầu ra (exit criteria) được đặt ra ngay trong kế hoạch kiểm thử để xác định khi nào một MỨC kiểm thử được coi là hoàn tất, thường gồm mức độ bao phủ đạt được, số lỗi còn mở, rủi ro tồn đọng và chi phí. Phương án B chỉ nói tới việc một phép kiểm thử đơn lẻ chạy xong, đó là chuyện thực thi chứ không phải tiêu chí đầu ra của cả mức kiểm thử; phương án C nói về vòng đời sản phẩm (khi nào ngừng sử dụng hệ thống); phương án D là việc so sánh kết quả thực tế với kết quả mong đợi, tức tiêu chí đạt/không đạt của một ca kiểm thử.
Đáp án đúng: C. Không thể kiểm thử vét cạn, nên câu hỏi "kiểm thử bao nhiêu là đủ" không có đáp số cố định: mức độ đủ phụ thuộc vào rủi ro của ngành nghề, các ràng buộc hợp đồng và những yêu cầu đặc thù của sản phẩm. Phần mềm y tế hay hàng không đòi hỏi mức kiểm thử khác hẳn một ứng dụng giải trí. Phương án A quá bi quan vì câu hỏi vẫn trả lời được khi đặt trong bối cảnh rủi ro cụ thể; phương án B ngược lại, quá lạc quan; phương án D chỉ nêu một yếu tố nhỏ, mức trưởng thành của đội phát triển không phải căn cứ chính để xác định khối lượng kiểm thử.
Đáp án đúng: E. Tiêu chí hoàn thành kiểm thử (test completion criteria, còn gọi là exit criteria) được đưa vào kế hoạch kiểm thử để trả lời câu hỏi KHI NÀO DỪNG kiểm thử: đạt bao nhiêu phần trăm bao phủ, còn bao nhiêu lỗi mức nghiêm trọng, rủi ro tồn đọng ở mức nào. Nhờ đó việc dừng kiểm thử là một quyết định có căn cứ chứ không phải vì hết thời gian hay hết tiền. Phương án A chỉ nói tới việc một phép kiểm thử chạy xong; B là mục tiêu của việc rà soát đặc tả ca kiểm thử; C thuộc kỹ thuật thiết kế dữ liệu đầu vào; D nói về hoàn thành khâu lập kế hoạch, không phải khâu kiểm thử.
Đáp án đúng: B. Độ tin cậy (reliability) là xác suất phần mềm hoạt động không phát sinh sự cố trong một khoảng thời gian và điều kiện xác định. Vì vậy hệ thống tin cậy là hệ thống ÍT có khả năng gây ra hỏng hóc (failure) khi vận hành. Cần phân biệt fault (lỗi nằm trong mã) với failure (biểu hiện sai khi chạy): một hệ thống vẫn có thể chứa nhiều fault ở những nhánh hiếm khi được thực thi mà vẫn rất tin cậy, nên phương án C "gần như không còn lỗi" không phải định nghĩa của độ tin cậy. Phương án A nói về tiến độ dự án và phương án D nói về mức độ hài lòng của người dùng, đều là thuộc tính khác.
Đáp án đúng: C. Bảo mật, hiệu năng, độ tin cậy và tính khả dụng đều là các thuộc tính CHẤT LƯỢNG, mô tả hệ thống hoạt động TỐT ĐẾN MỨC NÀO chứ không phải hệ thống làm được gì. Việc đánh giá chúng thuộc phạm vi kiểm thử phi chức năng. Kiểm thử chức năng (B) chỉ kiểm tra hệ thống có thực hiện đúng các chức năng đặc tả hay không; tích hợp hệ thống (A) là một mức kiểm thử, quan tâm tới giao tiếp giữa các hệ thống; kiểm thử yêu cầu (D) không phải một loại kiểm thử tiêu chuẩn theo cách phân loại chức năng - phi chức năng - cấu trúc - liên quan đến thay đổi.
Khi phát hiện và sửa lỗi trong phần mềm, việc retest (lặp lại kiểm tra) để xác nhận rằng lỗi gốc đã được loại bỏ thành công là rất quan trọng. Điều này được gọi là kiểm tra xác nhận (Confirmation testing). Kiểm tra xác nhận là một phần quan trọng của quy trình kiểm tra phần mềm và giúp đảm bảo rằng phần mềm đã được sửa lỗi một cách chính xác và hiệu quả. Trong quá trình kiểm tra xác nhận, các kỹ sư kiểm tra sẽ lặp lại các thử nghiệm đã được thực hiện trước đó để xác nhận rằng lỗi đã được loại bỏ và phần mềm hoạt động đúng như mong đợi. Nếu lỗi vẫn còn tồn tại, các kỹ sư sẽ phải sửa lỗi lại và lặp lại quá trình kiểm tra xác nhận cho đến khi lỗi được loại bỏ hoàn toàn. Kiểm tra xác nhận giúp đảm bảo rằng phần mềm đã được kiểm tra một cách đầy đủ và hiệu quả, giảm thiểu rủi ro lỗi và đảm bảo rằng phần mềm hoạt động đúng như mong đợi.
Đáp án đúng: D. Kiểm thử hệ thống (system testing) tiến hành trên toàn bộ hệ thống đã tích hợp, kiểm tra mọi yêu cầu chức năng, thông tin, cấu trúc và chất lượng, và dùng một bộ ca kiểm thử đã định trước để chứng minh với ban quản lý rằng hệ thống đáp ứng đặc tả. Kiểm thử tích hợp (B) chỉ tập trung vào giao tiếp giữa các thành phần; kiểm thử chấp nhận người dùng (C) do người dùng thực hiện theo tiêu chí chấp nhận của họ, sau kiểm thử hệ thống; còn kiểm thử thẩm định (A) là khái niệm rộng, trả lời câu hỏi có xây dựng đúng sản phẩm hay không chứ không phải một mức kiểm thử cụ thể như mô tả trong đề.
Đáp án đúng: C. Chi phí sửa một lỗi tăng theo cấp số nhân khi lỗi được phát hiện muộn vì lỗi đó đã bị "xây" vào ngày càng nhiều sản phẩm trung gian: tài liệu thiết kế, mã nguồn, ca kiểm thử, dữ liệu kiểm thử và cả những phần đã dựa trên nó. Sửa lỗi lúc này kéo theo sửa toàn bộ chuỗi sản phẩm ấy rồi kiểm thử hồi quy lại. Phương án A và B nêu những nguyên nhân ngoại vi (tài liệu kém, lương tăng) chỉ có tác động thứ yếu; phương án D bị loại vì C đã nêu đúng nguyên nhân cốt lõi.
Validation là quá trình kiểm tra và xác minh rằng sản phẩm đã được xây dựng đúng theo yêu cầu và tiêu chuẩn. Nó giúp đảm bảo rằng sản phẩm đáp ứng được các yêu cầu chức năng, hiệu suất và chất lượng mong muốn. Trong quá trình phát triển sản phẩm, validation giúp kiểm tra rằng sản phẩm đã được xây dựng đúng theo yêu cầu và tiêu chuẩn, giúp giảm thiểu các lỗi và sai sót. Điều này giúp đảm bảo rằng sản phẩm cuối cùng được xây dựng là đúng và đáp ứng được các yêu cầu của khách hàng. Validation không chỉ giúp kiểm tra chất lượng sản phẩm mà còn giúp kiểm tra rằng sản phẩm đã được xây dựng đúng theo yêu cầu và tiêu chuẩn. Nó giúp đảm bảo rằng sản phẩm đáp ứng được các yêu cầu chức năng, hiệu suất và chất lượng mong muốn. Điều này giúp giảm thiểu các lỗi và sai sót trong quá trình phát triển sản phẩm. Trong khi đó, các lựa chọn khác không chính xác. Lựa chọn i nói rằng validation giúp kiểm tra chất lượng sản phẩm, nhưng điều này không hoàn toàn chính xác. Validation không chỉ giúp kiểm tra chất lượng sản phẩm mà còn giúp kiểm tra rằng sản phẩm đã được xây dựng đúng theo yêu cầu và tiêu chuẩn. Lựa chọn iii nói rằng validation giúp phát triển sản phẩm, nhưng điều này không chính xác. Validation là quá trình kiểm tra và xác minh rằng sản phẩm đã được xây dựng đúng theo yêu cầu và tiêu chuẩn, không phải là quá trình phát triển sản phẩm. Lựa chọn iv nói rằng validation giúp theo dõi công cụ bị hao mòn và lỗi thời, nhưng điều này không liên quan đến validation. Validation chỉ liên quan đến quá trình kiểm tra và xác minh rằng sản phẩm đã được xây dựng đúng theo yêu cầu và tiêu chuẩn. Tóm lại, validation là quá trình kiểm tra và xác minh rằng sản phẩm đã được xây dựng đúng theo yêu cầu và tiêu chuẩn. Nó giúp đảm bảo rằng sản phẩm đáp ứng được các yêu cầu chức năng, hiệu suất và chất lượng mong muốn. Lựa chọn ii là đúng, còn các lựa chọn khác không chính xác.
Đáp án đúng: D. Phát biểu SAI là "kiểm thử thành phần không liên quan tới kiểm thử hồi quy": khi một thành phần được sửa, chính ở mức thành phần người ta phải chạy lại các ca kiểm thử cũ để bảo đảm thay đổi không phá vỡ hành vi đã đúng - đó là kiểm thử hồi quy ở mức đơn vị, thường được tự động hoá. Các phát biểu còn lại đều đúng: kiểm thử thành phần thường do chính đội phát triển thực hiện (A), còn được gọi là kiểm thử đơn vị, kiểm thử mô-đun hay kiểm thử cô lập (B), và cũng cần được lập kế hoạch với tiêu chí hoàn thành rõ ràng (C).
Đáp án đúng: A. Theo thuật ngữ chuẩn, failure (hỏng hóc) là biểu hiện hành vi sai của chương trình khi thực thi, do một fault (lỗi trong mã) gây ra, và fault lại bắt nguồn từ error (sai sót của con người). Vì vậy failure gắn với hành vi chạy sai chứ không gắn với thời điểm tìm thấy lỗi. Các phương án B, C, D đều định nghĩa theo mốc thời gian phát hiện - trước khi phát hành, sau khi phát hành hay trong pha thiết kế - nên nhầm giữa khái niệm failure với cách phân loại lỗi theo giai đoạn.
Đáp án đúng: B. Tích hợp từ dưới lên (bottom-up integration) bắt đầu từ các mô-đun ở mức thấp nhất, tức các mô-đun lá trong cây gọi hàm, rồi ghép dần lên các mô-đun cấp cao hơn; nó cần các driver để giả lập mô-đun gọi. Ngược lại, tích hợp từ trên xuống (A) bắt đầu từ mô-đun điều khiển cấp cao và dùng stub thay cho các mô-đun chưa có. "Module integration" (D) không phải tên một chiến lược tích hợp chuẩn, còn C bị loại vì B đã đúng.
Test Closure Activities là một phần quan trọng trong quá trình kiểm thử phần mềm. Mục tiêu chính của Test Closure Activities là đảm bảo rằng tất cả các hoạt động kiểm thử đã được hoàn thành và các kết quả đã được ghi nhận. Dưới đây là giải thích chi tiết về từng hoạt động trong Test Closure Activities: (i) Checking which planned deliverables have been delivered: Đây là hoạt động kiểm tra xem các sản phẩm đã được phát triển (deliverables) đã được hoàn thành theo kế hoạch hay chưa. Điều này giúp đảm bảo rằng tất cả các yêu cầu đã được đáp ứng và các sản phẩm đã được phát triển đúng như kế hoạch. (ii) Defect report analysis: Đây là hoạt động phân tích báo cáo lỗi (defect report). Mục tiêu của hoạt động này là xác định các lỗi đã được phát hiện trong quá trình kiểm thử và phân tích nguyên nhân của chúng. Điều này giúp các nhà phát triển hiểu rõ hơn về các lỗi và có thể sửa chữa chúng một cách hiệu quả. (iii) Finalizing and archiving testware: Đây là hoạt động hoàn thiện và lưu trữ các công cụ kiểm thử (testware). Testware bao gồm các tài liệu, công cụ và dữ liệu được sử dụng trong quá trình kiểm thử. Hoàn thiện và lưu trữ testware giúp đảm bảo rằng tất cả các thông tin quan trọng được lưu trữ an toàn và có thể được truy cập lại khi cần thiết. (iv) Analyzing lessons: Đây là hoạt động phân tích bài học (analyzing lessons). Mục tiêu của hoạt động này là xác định các bài học có thể được rút ra từ quá trình kiểm thử. Điều này giúp các nhà phát triển hiểu rõ hơn về các điểm mạnh và điểm yếu của quá trình kiểm thử và có thể cải thiện chúng trong tương lai. Tóm lại, tất cả các hoạt động trên đều là một phần quan trọng của Test Closure Activities. Chúng giúp đảm bảo rằng tất cả các hoạt động kiểm thử đã được hoàn thành, các sản phẩm đã được phát triển đúng như kế hoạch và các bài học có thể được rút ra từ quá trình kiểm thử.
Đáp án đúng: D. Rủi ro được chia thành rủi ro dự án (project risk) - liên quan tới khả năng quản lý và triển khai dự án - và rủi ro sản phẩm (product risk) - liên quan tới bản thân phần mềm được giao. Vấn đề nhà cung cấp (A), yếu tố tổ chức (B) và vấn đề kỹ thuật (C) đều là rủi ro dự án. Riêng "phần mềm giao ra dễ phát sinh lỗi" (D) mô tả chất lượng của chính sản phẩm nên là rủi ro SẢN PHẨM, không phải rủi ro dự án - đó là phương án cần chọn.
Đáp án đúng: A. Rủi ro dự án là những rủi ro đe doạ khả năng dự án đạt mục tiêu, gồm yếu tố tổ chức (thiếu nhân lực, thiếu kỹ năng, vấn đề giao tiếp, chính trị nội bộ), yếu tố nhà cung cấp và yếu tố kỹ thuật. Vì vậy "Organizational Factors" là câu trả lời. Các phương án B, C, D - đặc tính phần mềm kém, phần mềm giao ra dễ lỗi, phần mềm không thực hiện đúng chức năng - đều mô tả chất lượng của sản phẩm được giao nên thuộc nhóm rủi ro sản phẩm.
Đáp án đúng: B. Các vai trò trong một cuộc rà soát chính thức gồm: Manager (người quyết định tổ chức rà soát, cấp nguồn lực), Moderator (người điều phối, dẫn dắt cuộc họp), Author (tác giả tài liệu), Reviewers (người rà soát) và Scribe/Recorder (người ghi chép). Như vậy i, ii, iii đều đúng, còn "Assistant Manager" (iv) không phải một vai trò được định nghĩa trong quy trình rà soát chính thức, nên iv sai - đúng như phương án B mô tả.
Đáp án đúng: C. Sáu pha của quy trình rà soát chính thức theo đúng thứ tự là: Planning (lập kế hoạch, chọn người, xác định tiêu chí vào ra) → Kick Off (họp mở đầu, phân phát tài liệu, giải thích mục tiêu) → Individual Preparations (mỗi người tự nghiên cứu và ghi nhận vấn đề) → Review Meeting (họp rà soát, thảo luận và ghi nhận lỗi) → Rework (tác giả sửa) → Follow Up (kiểm tra việc sửa và đóng rà soát). Chuỗi này ứng với i, v, iv, ii, iii, vi, tức phương án C. Các phương án còn lại đảo lộn thứ tự, đặc biệt đặt Kick Off và Individual Preparations sai vị trí.
Informal review là một quá trình đánh giá không chính thức, thường được sử dụng trong các dự án hoặc công việc để đánh giá chất lượng và hiệu suất của một sản phẩm, dự án hoặc dịch vụ. Mục đích chính của Informal review là tìm kiếm một cách nhanh chóng và hiệu quả về lợi ích mà không cần phải đầu tư quá nhiều thời gian và nguồn lực. Điều này giúp cho các bên liên quan có thể nhận được phản hồi và đánh giá nhanh chóng, từ đó có thể điều chỉnh và cải thiện sản phẩm hoặc dự án một cách kịp thời.
Đáp án đúng: B và C. Phân tích tĩnh là việc phân tích mã nguồn hoặc tài liệu mà KHÔNG thực thi chương trình. Phát biểu C đúng: nhờ soi trực tiếp cấu trúc mã, nó phát hiện được những khiếm khuyết mà kiểm thử động rất khó lộ ra, như biến chưa khởi tạo, mã không bao giờ chạy tới, vi phạm chuẩn lập trình. Phát biểu B cũng đúng: phân tích tĩnh không bắt buộc phải làm trước khi mã được thực thi, nó có thể áp dụng ở bất kỳ thời điểm nào của vòng đời. Phát biểu A sai vì bản thân trình biên dịch chính là một dạng phân tích tĩnh; phát biểu D sai vì kiểm thử hộp trắng không thay thế được phân tích tĩnh.
Một số yếu tố thành công cho một cuộc đánh giá bao gồm: mỗi đánh giá không có một mục tiêu được định trước (i), các lỗi được tìm thấy được chào đón và được thể hiện một cách khách quan (ii), quản lý hỗ trợ một quá trình đánh giá tốt (iii) và có một trọng tâm vào việc học hỏi và cải tiến quy trình (iv). Các yếu tố này đóng vai trò quan trọng trong việc đảm bảo rằng quá trình đánh giá được thực hiện một cách hiệu quả và mang lại kết quả tích cực. Điều này giúp cho các cá nhân và tổ chức có thể học hỏi từ các lỗi và cải thiện quy trình của mình.
Đáp án đúng: C. Phân tích tĩnh làm việc trên mã nguồn mà không chạy chương trình, nên nó phát hiện tốt các khiếm khuyết lộ ra từ cấu trúc mã: dùng biến trước khi gán (A), mã không bao giờ được thực thi (B), truy cập vượt biên mảng khi chỉ số xác định tĩnh được (D). Ngược lại, rò rỉ bộ nhớ là hiện tượng chỉ bộc lộ trong quá trình CHẠY, khi bộ nhớ được cấp phát mà không được giải phóng theo thời gian - đó là địa hạt của phân tích động và các công cụ theo dõi bộ nhớ, nên phân tích tĩnh không tìm được.
Trong một cuộc họp đánh giá, người điều hành (moderator) là người chịu trách nhiệm về việc điều phối và quản lý cuộc họp. Họ có nhiệm vụ đảm bảo rằng cuộc họp diễn ra một cách trật tự và hiệu quả. Một trong những nhiệm vụ quan trọng của người điều hành là trung gian giữa các thành viên tham gia cuộc họp. Họ giúp các thành viên thảo luận và giải quyết các vấn đề một cách hiệu quả, tránh các xung đột và hiểu lầm. Người điều hành cũng có thể giúp các thành viên tập trung vào các vấn đề chính và tránh các vấn đề không liên quan. Ngoài ra, người điều hành cũng có thể giúp các thành viên xây dựng các mối quan hệ và tạo ra một môi trường làm việc tích cực.
Đáp án đúng: B. Rà soát chính thức (Inspection) có các đặc điểm: do một moderator được đào tạo dẫn dắt chứ không phải tác giả (i đúng); có quy trình theo dõi khắc phục chính thức sau cuộc họp (iii đúng); mục tiêu chính là tìm khiếm khuyết (iv đúng). Riêng phát biểu ii - "không có chuẩn bị trước cuộc họp" - là SAI, vì Individual Preparations chính là pha bắt buộc và quyết định hiệu quả của Inspection. Vậy i, iii, iv đúng và ii sai, tương ứng phương án B.
Trong một cuộc họp đánh giá, việc ghi chép lại các vấn đề, vấn đề và điểm mở được xác định là một phần quan trọng của quá trình. Người chịu trách nhiệm ghi chép lại các vấn đề này được gọi là Scribe. Scribe là người có nhiệm vụ ghi chép lại tất cả các vấn đề, vấn đề và điểm mở được thảo luận trong cuộc họp, bao gồm cả các ý kiến, đề xuất và quyết định của các thành viên tham gia. Việc ghi chép này giúp đảm bảo rằng tất cả các thông tin quan trọng được lưu giữ và có thể được tham khảo lại sau này. Ngoài ra, Scribe cũng có thể giúp tổng hợp và phân tích các thông tin được ghi chép lại, giúp các thành viên tham gia cuộc họp có thể hiểu rõ hơn về các vấn đề và điểm mở được thảo luận.
Đáp án đúng: D. Với phần mềm mua sẵn hoặc thuê ngoài gia công, bên mua thường chỉ nhận được sản phẩm chạy được cùng tài liệu người dùng, còn mã nguồn và cấu trúc bên trong thuộc quyền sở hữu của nhà cung cấp nên không có sẵn cho đội kiểm thử. Do đó chỉ có thể kiểm thử hộp đen dựa trên đặc tả. Trong phát triển truyền thống (A), phát triển lặp (B) và bảo trì hệ thống (C), tổ chức đều nắm mã nguồn của mình nên đội kiểm thử có thể tiếp cận cấu trúc nội bộ khi cần áp dụng kỹ thuật hộp trắng.
Đáp án đúng: D. Trường dữ liệu chỉ chấp nhận chữ cái, không phân biệt hoa thường. Vì vậy CLASS, cLASS và CLass đều nằm trong lớp tương đương HỢP LỆ - chúng chỉ khác nhau ở kiểu chữ, một yếu tố mà đặc tả đã cho phép. Riêng CLa01ss chứa hai chữ số 0 và 1 nên rơi vào lớp tương đương KHÔNG hợp lệ, đúng như câu hỏi yêu cầu. Đây cũng là minh hoạ cho nguyên tắc phân hoạch tương đương: mỗi lớp là tập giá trị mà hệ thống được kỳ vọng xử lý theo cùng một cách.
Đáp án đúng: B. Kiểm thử giá trị biên tập trung vào các giá trị nằm TẠI biên và ngay dưới, ngay trên biên của các lớp tương đương đầu vào và đầu ra, vì lỗi lập trình rất hay xảy ra ở chỗ so sánh nhỏ hơn với nhỏ hơn hoặc bằng. Nó bổ sung cho phân hoạch tương đương chứ không đồng nhất với kỹ thuật này (A sai). Kiểm thử tổ hợp các điều kiện đầu vào (C) là bảng quyết định; và giá trị biên là kỹ thuật hộp ĐEN dựa trên đặc tả, không phải chiến lược hộp trắng (D sai).
Đáp án đúng: C. Theo sơ đồ, công tắc có ba trạng thái: OFF, ON và FAULT. Các chuyển hợp lệ được vẽ là OFF sang ON, ON sang OFF, ON sang FAULT và FAULT quay về chính nó. Không có mũi tên nào đi từ FAULT sang ON, nên chuyển "FAULT to ON" là chuyển KHÔNG hợp lệ - đây chính là loại ca kiểm thử âm mà kỹ thuật state transition testing dùng để kiểm tra hệ thống có chặn được chuyển trạng thái sai hay không. Hai phương án A và B đều là chuyển đã được vẽ tường minh trên sơ đồ nên hợp lệ.
Để xác định các giá trị tương đương thuộc cùng lớp, chúng ta cần phân tích điều kiện chuyển đổi trạng thái của Switch. Switch được bật khi nhiệt độ cao hơn 21 và tắt khi nhiệt độ thấp hơn 18. Điều này cho thấy Switch được bật khi nhiệt độ nằm trong khoảng từ 21 đến 18 (kể cả 18 vì Switch được tắt khi nhiệt độ thấp hơn 18). Do đó, các giá trị thuộc cùng lớp sẽ là các giá trị nằm trong khoảng từ 21 đến 18.
Đáp án đúng: C. Đoạn chương trình gồm hai cấu trúc rẽ nhánh nối tiếp và độc lập nhau. Cấu trúc thứ nhất if-else cho hai đường đi (đi nhánh statement 1 hoặc statement 2); cấu trúc thứ hai if-then cũng cho hai đường đi (thực thi statement 3 hoặc bỏ qua). Vì hai điều kiện độc lập, tổng số đường đi qua cả đoạn là 2 × 2 = 4, nên cần 4 ca kiểm thử để phủ hết mọi trình tự câu lệnh. Lưu ý phân biệt với bao phủ câu lệnh (chỉ cần 2 ca) và bao phủ nhánh (cũng 2 ca) - phủ ĐƯỜNG ĐI luôn đòi hỏi nhiều ca hơn.
Logic coverage là một khái niệm quan trọng trong lĩnh vực kiểm thử phần mềm, giúp đảm bảo rằng mã nguồn đã được kiểm tra đầy đủ và chính xác. Logic coverage bao gồm các loại sau: Statement Coverage, Condition Coverage, Path Coverage. Tuy nhiên, Pole Coverage không phải là một loại logic coverage chính thức trong lĩnh vực kiểm thử phần mềm.
Đáp án đúng: B. Phân hoạch tương đương chia miền giá trị thành các lớp mà hệ thống được kỳ vọng xử lý như nhau, và kỹ thuật này áp dụng được cho cả ĐẦU VÀO lẫn ĐẦU RA, nhờ đó đạt được bao phủ cả hai phía chỉ với một ca kiểm thử đại diện cho mỗi lớp. Phân tích giá trị biên (A) là kỹ thuật bổ sung, tập trung vào rìa của các lớp chứ không tự nó cho bao phủ toàn miền; bảng quyết định (C) dùng cho tổ hợp điều kiện nghiệp vụ; kiểm thử chuyển trạng thái (D) dùng khi hành vi phụ thuộc vào trạng thái và lịch sử.
Đáp án đúng: A. Kiểm thử hộp xám (Gray Box Testing) kết hợp đặc điểm của cả hai: người kiểm thử thiết kế ca kiểm thử chủ yếu theo đặc tả như hộp đen, nhưng có hiểu biết một phần về cấu trúc bên trong - cấu trúc dữ liệu, thuật toán, lược đồ cơ sở dữ liệu - như hộp trắng, nhờ đó chọn được dữ liệu kiểm thử sắc bén hơn. "Hybrid Testing" (B) không phải thuật ngữ chuẩn trong phân loại kỹ thuật kiểm thử, nên phương án C gộp cả hai và phương án D phủ định đều không đúng.
Đáp án đúng: A. Ghép đúng là 1Y, 2Z, 3X, 4W. Decision Table Testing (1) dựng bảng tổ hợp các điều kiện đầu vào, nhờ đó kiểm thử được những tổ hợp mà lẽ thường sẽ bị bỏ sót - khớp với Y. Decision Testing (2) là một dạng kiểm thử luồng điều khiển dựa trên kết quả của các quyết định, tức bao phủ nhánh - khớp với Z. State Transition Testing (3) kiểm tra phản ứng khác nhau của hệ thống tuỳ theo trạng thái hiện tại và lịch sử trước đó - khớp với X. Exploratory Testing (4) là kiểm thử theo phiên có mục tiêu, bổ trợ cho kiểm thử có cấu trúc - khớp với W.
Configuration management procedures là một phần quan trọng trong quy trình kiểm thử phần mềm. Chúng giúp đảm bảo rằng các thay đổi được thực hiện trong phần mềm được theo dõi và kiểm soát một cách hiệu quả. Việc thực hiện các thủ tục quản lý cấu hình trong giai đoạn lập kế hoạch kiểm thử là rất quan trọng vì nó giúp đảm bảo rằng các yêu cầu và giả định được xác định rõ ràng và được thực hiện một cách nhất quán. Điều này giúp giảm thiểu khả năng xảy ra lỗi và cải thiện chất lượng phần mềm. Ngoài ra, việc thực hiện các thủ tục quản lý cấu hình trong giai đoạn lập kế hoạch kiểm thử cũng giúp đảm bảo rằng các nguồn lực và thời gian được sử dụng một cách hiệu quả. Trong giai đoạn lập kế hoạch kiểm thử, các thủ tục quản lý cấu hình giúp xác định các yêu cầu và giả định, xác định các nguồn lực và thời gian cần thiết, và lập kế hoạch kiểm thử chi tiết. Điều này giúp đảm bảo rằng các thử nghiệm được thực hiện một cách hiệu quả và đạt được kết quả mong muốn.
Một trong những lý do chính khiến các nhà phát triển gặp khó khăn khi kiểm tra công việc của mình là sự thiếu khách quan. Khi tự kiểm tra công việc của mình, các nhà phát triển thường có xu hướng nhìn nhận công việc của mình theo cách tích cực, bỏ qua các lỗi và hạn chế. Điều này dẫn đến việc kiểm tra không đầy đủ và hiệu quả, khiến các lỗi và hạn chế không được phát hiện và sửa chữa kịp thời. Sự thiếu khách quan này có thể được giải thích bởi sự gắn bó cảm xúc và tâm lý của các nhà phát triển với công việc của mình, cũng như sự khó khăn trong việc đánh giá công việc của mình một cách khách quan.
Test planning là một phần quan trọng của quá trình kiểm thử phần mềm. Nó bao gồm việc xác định mục tiêu, phạm vi và phạm vi kiểm thử. Các hoạt động chính trong test planning bao gồm: - Xác định mục tiêu và phạm vi kiểm thử: Đây là bước đầu tiên trong quá trình kiểm thử phần mềm. Mục tiêu và phạm vi kiểm thử cần được xác định rõ ràng để đảm bảo rằng kiểm thử được thực hiện một cách hiệu quả. - Xác định phạm vi kiểm thử: Phạm vi kiểm thử bao gồm các chức năng, tính năng và yêu cầu của phần mềm cần được kiểm thử. - Xác định nguồn lực: Nguồn lực bao gồm nhân viên, thiết bị và thời gian cần thiết để thực hiện kiểm thử. - Xác định môi trường kiểm thử: Môi trường kiểm thử bao gồm các thiết bị, phần mềm và hệ thống cần thiết để thực hiện kiểm thử. - Xác định phương pháp kiểm thử: Phương pháp kiểm thử bao gồm các kỹ thuật và công cụ cần thiết để thực hiện kiểm thử. - Xác định kế hoạch kiểm thử: Kế hoạch kiểm thử bao gồm các bước và giai đoạn cần thiết để thực hiện kiểm thử. Trong câu hỏi trên, các hoạt động chính trong test planning là: - Xác định phạm vi kiểm thử (ii) - Xác định nguồn lực (iii) - Xác định môi trường kiểm thử (iv) là không đúng vì môi trường kiểm thử là một phần của kế hoạch kiểm thử, không phải là một hoạt động riêng biệt. - Xác định phương pháp kiểm thử và kế hoạch kiểm thử không được đề cập trong câu hỏi. Vì vậy, đáp án đúng là: ii và iii là đúng, i, iv và v là sai.
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.
Test estimation, test control và test monitoring là ba khái niệm quan trọng trong quản lý thử nghiệm phần mềm. Test estimation liên quan đến việc ước tính thời gian và nguồn lực cần thiết để thực hiện các hoạt động thử nghiệm. Điều này bao gồm việc ước tính số lượng thử nghiệm cần thực hiện, thời gian cần thiết để thực hiện từng thử nghiệm và nguồn lực cần thiết để hỗ trợ quá trình thử nghiệm. Test control liên quan đến việc quản lý và điều chỉnh quá trình thử nghiệm để đảm bảo rằng mục tiêu thử nghiệm được đạt được. Điều này bao gồm việc phân bổ nguồn lực, quản lý thời gian và đảm bảo rằng quá trình thử nghiệm được thực hiện một cách hiệu quả. Test monitoring liên quan đến việc theo dõi và đánh giá quá trình thử nghiệm để đảm bảo rằng mục tiêu thử nghiệm được đạt được. Điều này bao gồm việc theo dõi tiến độ, đánh giá hiệu suất và thực hiện các điều chỉnh cần thiết để quá trình thử nghiệm hiệu quả. Vì vậy, đáp án đúng là ['1-b, 2-c, 3-a'], vì test estimation liên quan đến việc ước tính thời gian và nguồn lực cần thiết (b), test control liên quan đến việc quản lý và điều chỉnh quá trình thử nghiệm (c) và test monitoring liên quan đến việc theo dõi và đánh giá (a).
Đáp án đúng: A. Testware gồm ca kiểm thử, dữ liệu kiểm thử, kịch bản, công cụ và tài liệu kiểm thử; chúng phải được quản lý cấu hình đúng như yêu cầu, thiết kế và mã nguồn, để luôn biết phiên bản testware nào tương ứng với phiên bản phần mềm nào. Phương án B sai vì testware cần được tái sử dụng và bảo trì chứ không dựng lại từ đầu cho mỗi phiên bản; phương án C sai vì testware vẫn cần cho kiểm thử bảo trì sau khi phát hành; phương án D sai vì testware càng phải được tài liệu hoá tốt để người khác dùng lại được.
Đáp án đúng: A. Ma trận Chức năng/Kiểm thử (Function/Test Matrix) đối chiếu từng chức năng của hệ thống với các ca kiểm thử tương ứng và trạng thái thực hiện của chúng, cho thấy tiến độ và mức bao phủ TẠI THỜI ĐIỂM đang kiểm thử. Vì được lập và cập nhật trong lúc kiểm thử còn diễn ra, nó được xếp vào nhóm báo cáo kiểm thử tạm thời (interim test report). Báo cáo kiểm thử cuối cùng (B) chỉ lập khi kết thúc; báo cáo trạng thái dự án (C) và báo cáo quản lý (D) có phạm vi rộng hơn, không phải phân loại của tài liệu này.
Đáp án đúng: B. Quản lý cấu hình bao gồm: định danh các hạng mục cấu hình và phiên bản kiểm thử (C), ghi nhận trạng thái của các hạng mục cấu hình (A), lưu vết mọi thay đổi tài liệu theo thời gian (D) và quản lý một thư viện được kiểm soát để truy cập có phép (E). Riêng việc đánh giá sự phù hợp với tiêu chuẩn ISO 9001 (B) là hoạt động ĐÁNH GIÁ CHẤT LƯỢNG của tổ chức, thuộc phạm vi bảo đảm chất lượng và kiểm toán chất lượng, không nằm trong quản lý cấu hình.
Quality Assurance (QA) là quá trình so sánh chất lượng sản phẩm với các tiêu chuẩn ứng dụng và thực hiện hành động khi phát hiện ra sự không đáp ứng. Quá trình này giúp đảm bảo rằng sản phẩm đáp ứng các yêu cầu và tiêu chuẩn đã được xác định trước. QA thường bao gồm các bước như xác định tiêu chuẩn chất lượng, kiểm tra và đánh giá sản phẩm, phát hiện và xử lý các vấn đề không đáp ứng, và thực hiện các biện pháp cải thiện chất lượng. Mục tiêu của QA là đảm bảo rằng sản phẩm đáp ứng các tiêu chuẩn chất lượng và đáp ứng nhu cầu của khách hàng. Quá trình này giúp xây dựng niềm tin và uy tín của doanh nghiệp, đồng thời giúp giảm thiểu rủi ro và tăng cường hiệu suất sản xuất. Trong thực tế, QA được áp dụng rộng rãi trong nhiều lĩnh vực như sản xuất, xây dựng, y tế, và công nghệ thông tin.
Đáp án đúng: B. Kiểm thử hồi quy là chạy lại nhiều lần cùng một bộ ca kiểm thử sau mỗi lần phần mềm thay đổi, nên nó là ứng viên số một cho tự động hoá bằng công cụ ghi và phát lại (Record/Playback, còn gọi là capture-replay): thao tác của người kiểm thử được ghi thành kịch bản rồi phát lại tự động ở các phiên bản sau. Công cụ hiệu năng (1) phục vụ đo thời gian đáp ứng và khả năng chịu tải, không phải mục đích của hồi quy. Vì chỉ (2) đúng nên phương án gộp C và phương án phủ định D đều bị loại.
Các loại trả lời là i. Cơ sở hạ tầng ghi lại và tái tạo là ít có khả năng được sử dụng để Đáp án: - Performance testing (kiểm tra hiệu suất) - Recovery testing (kiểm tra phục hồi) - GUI testing (kiểm tra giao diện người dùng) - User requirements (yêu cầu người dùng) Câu trả lời đúng là Performance testing. Giải thích: Cơ sở hạ tầng ghi lại và tái tạo thường được sử dụng để tái tạo lại các tình huống thử nghiệm phức tạp, chẳng hạn như kiểm tra giao diện người dùng hoặc kiểm tra phục hồi. Tuy nhiên, chúng không phù hợp để kiểm tra hiệu suất, vì hiệu suất thường liên quan đến việc đo lường tốc độ và hiệu quả của hệ thống trong thời gian dài, và cơ sở hạ tầng ghi lại và tái tạo không thể tái tạo lại toàn bộ quá trình thời gian dài này.
Đáp án đúng: D. Công cụ quản lý kiểm thử (test management tool) là nơi lưu ca kiểm thử, lập lịch thực thi, ghi nhận sự cố phát hiện được và duy trì liên kết truy vết giữa yêu cầu - ca kiểm thử - kết quả. Đúng ba việc mà câu hỏi nêu. Công cụ phân tích động (A) theo dõi hành vi chương trình lúc chạy; công cụ thực thi kiểm thử (B) chỉ chạy kịch bản và so sánh kết quả; công cụ gỡ lỗi (C) hỗ trợ lập trình viên khoanh vùng lỗi; công cụ quản lý cấu hình (E) quản lý phiên bản và thay đổi của các hạng mục, không phụ trách lập lịch kiểm thử hay ghi nhận sự cố.
Thực tế, việc quản lý và cung cấp một thư viện được kiểm soát chứa tất cả các mặt hàng cấu hình được gọi là "Configuration Control". Điều này bao gồm việc quản lý và theo dõi các thay đổi đối với các mặt hàng cấu hình, đảm bảo rằng tất cả các phiên bản mới được kiểm tra và phê duyệt trước khi được triển khai. Configuration Control giúp đảm bảo rằng các mặt hàng cấu hình được quản lý một cách hiệu quả và giảm thiểu rủi ro khi triển khai các thay đổi.
Một công cụ thực thi thử nghiệm thương mại điển hình có thể thực hiện tất cả các lựa chọn sau EXCEPT: Công cụ thực thi thử nghiệm thương mại điển hình thường được sử dụng để tự động hóa quá trình thử nghiệm, giúp giảm thời gian và tăng hiệu suất. Lựa chọn "Tạo ra đầu ra dự kiến" không phải là một chức năng cơ bản của công cụ thực thi thử nghiệm thương mại điển hình. Thay vào đó, công cụ này thường được sử dụng để thực hiện các chức năng như: - Lặp lại đầu vào theo một kịch bản lập trình sẵn - So sánh kết quả dự kiến với kết quả thực tế - Lưu trữ đầu vào thử nghiệm - Đọc giá trị thử nghiệm từ tệp dữ liệu Do đó, lựa chọn "Tạo ra đầu ra dự kiến" không phải là một chức năng cơ bản của công cụ thực thi thử nghiệm thương mại điển hình.
User Acceptance Testing (UAT) là một phần quan trọng của quy trình phát triển phần mềm, đảm bảo rằng sản phẩm đáp ứng được yêu cầu và kỳ vọng của người dùng. Các đặc điểm chính của UAT bao gồm: sử dụng các công cụ kiểm tra tự động hóa, thực hiện kiểm tra bởi người dùng, kiểm tra theo các tiêu chí chấp nhận và tích hợp hệ thống với tài liệu người dùng. Tuy nhiên, không phải tất cả các lựa chọn đều là đặc điểm của UAT. Sử dụng các công cụ kiểm tra tự động hóa không phải là một đặc điểm chính của UAT, vì UAT thường tập trung vào việc kiểm tra và xác minh rằng sản phẩm đáp ứng được yêu cầu và kỳ vọng của người dùng, chứ không phải là sử dụng các công cụ tự động hóa để thực hiện kiểm tra.
Đáp án đúng: C. Giá trị cốt lõi mà công cụ và tự động hoá mang lại nằm ở cả hai nhóm thuộc tính. Thứ nhất là tốc độ và hiệu suất: máy chạy hàng nghìn ca kiểm thử trong thời gian con người chỉ chạy được vài chục, cho phép hồi quy sau mỗi lần build. Thứ hai là độ chính xác và tính nhất quán: công cụ lặp lại đúng từng bước, không mệt mỏi, không bỏ sót, nên kết quả có thể tái lập. Vì cả (1) và (2) đều đúng nên phải chọn phương án gộp; chọn riêng A hoặc B đều bỏ mất một nửa lợi ích, còn D phủ định cả hai nên sai.
Automation của thử nghiệm hồi quy (regression test) là quá trình tự động hóa việc chạy thử nghiệm để kiểm tra lại mã nguồn sau khi có thay đổi. Để thực hiện việc này, chúng ta cần sử dụng các công cụ hỗ trợ. Trong các lựa chọn đã cho, công cụ "Capture/Playback" là một trong những công cụ quan trọng trong việc tự động hóa thử nghiệm hồi quy.
Công cụ quản lý yêu cầu là công cụ lưu trữ các tuyên bố về yêu cầu, kiểm tra tính nhất quán và cho phép ưu tiên các yêu cầu và cho phép các thử nghiệm riêng lẻ có thể theo dõi được đến các yêu cầu, chức năng và tính năng. Công cụ này giúp đảm bảo rằng các yêu cầu được thống nhất và dễ dàng theo dõi trong suốt quá trình phát triển sản phẩm. Nó cũng giúp xác định và ưu tiên các yêu cầu quan trọng nhất, từ đó giúp tối ưu hóa quá trình phát triển và giảm thiểu rủi ro.
Sử dụng các công cụ kiểm thử (test tools) có thể mang lại nhiều lợi ích cho quá trình kiểm thử và bảo trì phần mềm. Trong số các lựa chọn trên, hai lợi ích được cho là có thể đạt được là dễ dàng truy cập thông tin về kiểm thử và kiểm tra (i) và sự nhất quán cao hơn trong kiểm thử (iv). Điều này là vì các công cụ kiểm thử thường cung cấp khả năng truy cập dễ dàng vào thông tin về kiểm thử, bao gồm cả lịch sử kiểm thử và kết quả kiểm thử. Đồng thời, các công cụ kiểm thử cũng có thể giúp đảm bảo rằng các kiểm thử được thực hiện một cách nhất quán và chính xác, giảm thiểu khả năng xảy ra lỗi trong quá trình kiểm thử. Các lợi ích khác như giảm thiểu bảo trì phần mềm kiểm thử (ii) và dễ dàng và rẻ tiền để triển khai (iii) có thể không được đảm bảo khi sử dụng các công cụ kiểm thử, vì chúng phụ thuộc vào nhiều yếu tố như loại công cụ, quy trình kiểm thử và nguồn lực của tổ chức.
Trong quá trình phát triển phần mềm, các kỹ sư phần mềm thường tham gia vào các cuộc thảo luận và đánh giá kỹ thuật để đảm bảo chất lượng và hiệu suất của sản phẩm. Tuy nhiên, không phải tất cả các thành viên trong nhóm đều tham gia vào các cuộc thảo luận này. Người quản lý (Management) thường không tham gia trực tiếp vào các cuộc thảo luận kỹ thuật, vì họ tập trung vào việc quản lý dự án, lập kế hoạch và đảm bảo rằng dự án được hoàn thành đúng hạn. Họ có thể không có kiến thức chuyên môn về kỹ thuật, nhưng họ có thể đưa ra quyết định quan trọng về hướng đi của dự án. Các nhà phân tích (Analysts), kỹ sư phần mềm (Developers) và kiểm thử viên (Testers) thường tham gia vào các cuộc thảo luận kỹ thuật để đảm bảo rằng sản phẩm đáp ứng các yêu cầu và tiêu chuẩn kỹ thuật.
Đáp án đúng: A. Nhiệm vụ của Test Lead / Test Leader mang tính quản lý và định hướng: làm việc với nhà cung cấp công cụ để tận dụng công cụ cho dự án (i), viết báo cáo tổng kết kiểm thử từ dữ liệu thu thập được (ii), và quyết định cái gì nên tự động hoá, tự động tới mức nào và bằng cách nào (iii). Riêng việc soạn đặc tả kiểm thử, tức thiết kế chi tiết các ca kiểm thử (iv), là công việc của người kiểm thử (tester) chứ không phải của trưởng nhóm. Vậy i, ii, iii đúng và iv sai, đúng như phương án A.
Khi nào bạn nên dừng thử nghiệm? Trả lời này liên quan đến việc xác định điều kiện kết thúc thử nghiệm. Có một số yếu tố cần xem xét khi quyết định khi nào nên dừng thử nghiệm. Thứ nhất, bạn có thể dừng thử nghiệm khi đã tìm thấy số lượng lỗi được chỉ định. Tuy nhiên, phương pháp này có thể không hiệu quả vì nó không đảm bảo rằng tất cả các lỗi đã được phát hiện. Thứ hai, bạn có thể dừng thử nghiệm khi đã đạt được các tiêu chí hoàn thành thử nghiệm. Điều này có nghĩa là bạn đã thực hiện tất cả các bước cần thiết để đảm bảo rằng sản phẩm hoặc hệ thống đã được kiểm tra đầy đủ. Thứ ba, bạn có thể dừng thử nghiệm khi đã hoàn thành tất cả các thử nghiệm có ưu tiên cao và trung bình. Tuy nhiên, phương pháp này có thể không hiệu quả vì nó không đảm bảo rằng tất cả các thử nghiệm quan trọng đã được thực hiện. Cuối cùng, bạn có thể dừng thử nghiệm khi đã thực hiện tất cả các câu lệnh. Tuy nhiên, phương pháp này không phải lúc nào cũng khả thi vì nó có thể không thể thực hiện được trong một số trường hợp. Tóm lại, phương pháp tốt nhất để dừng thử nghiệm là khi đã đạt được các tiêu chí hoàn thành thử nghiệm.