Tôi đã nhận được một số trường hợp kiểm tra tăng cường được đặt hàng trong một số bộ thử nghiệm. Một số trường hợp thử nghiệm có một, một số nhiều hơn một kiểm tra.Làm cách nào để yêu cầu Boost.Test dừng lại trong trường hợp kiểm tra lỗi đầu tiên?
Tuy nhiên, khi thực hiện tất cả các thử nghiệm, tất cả chúng đều được thực hiện - bất kể số lần thất bại hoặc vượt qua. Tôi biết, rằng tôi có thể ngừng thực hiện một trường hợp thử nghiệm với một vài kiểm tra bằng cách sử dụng BOOST_REQUIRE
thay vì BOOST_CHECK
. Nhưng điều đó không muốn tôi muốn.
Làm cách nào tôi có thể yêu cầu Boost dừng toàn bộ quá trình thực thi sau khi trường hợp thử nghiệm đầu tiên không thành công? Tôi thích giải pháp được biên dịch hơn (ví dụ: được thực hiện với lịch thi đấu toàn cục) qua giải pháp thời gian chạy (tức là tham số thời gian chạy).
BOOST_REQUIRE_THROW sẽ ném một ngoại lệ do đó việc thực hiện toàn bộ bộ thử nghiệm phải được dừng lại. – TemplateRex
Cảm ơn @rhalbersma. Tôi sẽ thử xem. Tại sao bạn không trả lời câu hỏi đó? –
Ehm, vì sau khi đọc kỹ hướng dẫn sử dụng Boost.Test, đề xuất không chính xác. BOOST_REQUIRE_THROW là một thử nghiệm đơn vị để kiểm tra xem một ngoại lệ có được ném hay không. Nó không tự ném. – TemplateRex