PostgreSQL: kèo bóng đá hôm | |||
---|---|---|---|
prev | UP | Chương 31. Kiểm tra hồi quy | Tiếp theo |
Vì một số thử nghiệm vốn đã tạo ra kết quả phụ thuộc vào môi trường, chúng tôi đã cung cấp kèo bóng đá euro cách để chỉ định thay thế"Dự kiến"kèo bóng đá euro kết quả. Mỗi bài kiểm tra hồi quy có thể có một số kèo bóng đá euro so sánh hiển thị kết quả có thể trên các nền tảng khác nhau.
Cơ chế đầu tiên cho phép các kèo bóng đá euro so sánh được chọn cho các nền tảng cụ thể. Có một kèo bóng đá euro ánh xạ,src/test/repress/resultMap, định nghĩa sử dụng kèo bóng đá euro so sánh nào cho mỗi nền tảng. Để loại bỏ kiểm tra không có thật"thất bại"Đối với một nền tảng cụ thể, trước tiên bạn chọn hoặc tạo kèo bóng đá euro kết quả biến thể, sau đó thêm một dòng vàoresultMapkèo bóng đá euro.
Mỗi dòng trong kèo bóng đá euro ánh xạ có dạng
testName: đầu ra: platformpotyp
Tên thử nghiệm chỉ là tên của mô -đun kiểm tra hồi quy cụ thể. Giá trị đầu ra cho biết kiểm tra kèo bóng đá euro đầu ra nào.out. Giá trị tương ứng với phần mở rộng kèo bóng đá euro của kèo bóng đá euro đầu ra.expr(nghĩa là một biểu thức chính quy với một ẩn^neo khi bắt đầu). Nó được khớp với tên nền tảng như được in bởi114PostgreSQL: Tài liệu: 9.6: kèo bóng đá euro so sánh biến thể57. Tên kèo bóng đá euro so sánh là tên cơ sở của kèo bóng đá euro so sánh kết quả thay thế.
Ví dụ: Một số hệ thống diễn giải kèo bóng đá euro giá trị điểm nổi rất nhỏ là 0, thay vì báo cáo lỗi dòng chảy. Điều này gây ra một vài sự khác biệt trongfloat8Kiểm tra hồi quy. Do đó, chúng tôi cung cấp một kèo bóng đá euro so sánh biến thể,float8-small-is-Zero.out, bao gồm kèo bóng đá euro kết quả được dự kiến trên kèo bóng đá euro hệ thống này. Để im lặng"Thất bại"Tin nhắn trênOpenBSDNền tảng,resultMapBao gồm:
12119_12172
sẽ kích hoạt trên bất kỳ máy nào trong đó đầu ra củaconfig.guessMatchesi.86-.*-OpenBSD. kèo bóng đá euro dòng khác trongresultMapChọn kèo bóng đá euro so sánh biến thể cho các nền tảng khác khi nó phù hợp.
Cơ chế lựa chọn thứ hai cho các kèo bóng đá euro so sánh biến thể tự động hơn nhiều: nó chỉ đơn giản là sử dụng"Kết hợp tốt nhất"Trong số một số kèo bóng đá euro so sánh được cung cấp. Tập lệnh trình điều khiển kiểm tra hồi quy xem xét cả kèo bóng đá euro so sánh tiêu chuẩn cho một bài kiểm tra,testName.outvà các kèo bóng đá euro biến thể có têntestName_Digit.out(trong đóDigitlà bất kỳ chữ số nào0-9). Nếu bất kỳ kèo bóng đá euro nào như vậy là một kết hợp chính xác, bài kiểm tra được coi là vượt qua;resultMapBao gồm một mục cho bài kiểm tra cụ thể, sau đó là cơ sởtestNamelà tên thay thế được đưa ra trongresultMap.)
Ví dụ, choCharKiểm tra, kèo bóng đá euro so sánhchar.outChứa kết quả dự kiến trongCvàPosixLocales, trong khi kèo bóng đá eurochar_1.outchứa kết quả được sắp xếp khi chúng xuất hiện ở nhiều địa phương khác.
Cơ chế phù hợp nhất đã được đưa ra để đối phó với kết quả phụ thuộc vào địa phương, nhưng nó có thể được sử dụng trong mọi tình huống mà kết quả kiểm tra không thể được dự đoán dễ dàng từ tên nền tảng. Một hạn chế của cơ chế này là trình điều khiển kiểm tra không thể cho biết kèo bóng đá euro thể nào là"Đúng"Đối với môi trường hiện tại; Nó sẽ chỉ chọn kèo bóng đá euro thể dường như hoạt động tốt nhất.