Làm cách nào để bỏ qua bài kiểm tra đơn vị BOOST? Tôi muốn lập trình bỏ qua một số bài kiểm tra đơn vị của tôi tùy thuộc vào, (ví dụ) nền tảng mà tôi đang thực hiện chúng. Giải pháp hiện tại của tôi là:Làm thế nào để bỏ qua một thử nghiệm đơn vị BOOST?
#define REQUIRE_LINUX char * os_cpu = getenv("OS_CPU"); if (os_cpu != "Linux-x86_64") return;
BOOST_AUTO_TEST_CASE(onlylinux) {
REQUIRE_LINUX
...
the rest of the test code.
}
(lưu ý rằng môi trường xây dựng của chúng tôi đặt biến OS_CPU). Điều này có vẻ xấu xí và dễ bị lỗi, và cũng giống như bỏ qua im lặng có thể khiến người dùng bỏ qua các bài kiểm tra mà không biết về nó.
Làm cách nào để bỏ qua thử nghiệm đơn vị tăng cường dựa trên logic tùy ý?
tôi không thể sử dụng ifdefs, một số các tiêu chí này phải được xác định tại thực hiện theo thời gian. Tôi có thể sẽ sử dụng một cái gì đó như gợi ý đăng ký của bạn, cảm ơn. – dbn