Gần đây tôi đã phát hành xUnit ++ , cụ thể là một giải pháp thay thế cho Google Test và Thư viện thử nghiệm Boost (xem các so sánh ). Nếu bạn quen thuộc với xUnit.Net, bạn đã sẵn sàng cho xUnit ++.
#include "xUnit++/xUnit++.h"
FACT("Foo and Blah should always return the same value")
{
Check.Equal("0", Foo()) << "Calling Foo() with no parameters should always return \"0\".";
Assert.Equal(Foo(), Blah());
}
THEORY("Foo should return the same value it was given, converted to string", (int input, std::string expected),
std::make_tuple(0, "0"),
std::make_tuple(1, "1"),
std::make_tuple(2, "2"))
{
Assert.Equal(expected, Foo(input));
}
Những đặc điểm chính:
- Cực kỳ nhanh: các bài kiểm tra chạy đồng thời .
- Di động
- Đăng ký kiểm tra tự động
- Nhiều loại xác nhận (Boost không có gì trên xUnit ++)
- So sánh các bộ sưu tập nguyên bản.
- Các xác nhận có ba cấp độ:
- lỗi nghiêm trọng
- lỗi không nghiêm trọng
- cảnh báo
- Dễ dàng xác nhận đăng nhập:
Assert.Equal(-1, foo(i)) << "Failed with i = " << i;
- Kiểm tra đăng nhập:
Log.Debug << "Starting test"; Log.Warn << "Here's a warning";
- Đồ đạc
- Kiểm tra dựa trên dữ liệu (Lý thuyết)
- Chọn thử nghiệm nào để chạy dựa trên:
- Khớp thuộc tính
- Đặt tên cho chuỗi con
- Phòng thử nghiệm