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 đá pháp cách để chỉ định thay thếHồidự kiến”kèo bóng đá pháp kết quả. Mỗi bài kiểm tra hồi quy có thể có một số kèo bóng đá pháp so sánh hiển thị kết quả có thể trên các nền tảng khác nhau. Có hai cơ chế độc lập để xác định kèo bóng đá pháp so sánh nào được sử dụng cho mỗi thử nghiệm.
Cơ chế đầu tiên cho phép các kèo bóng đá pháp so sánh được chọn cho các nền tảng cụ thể. Có một kèo bóng đá pháp ánh xạ,src/test/repress/resultMap
, định nghĩa sử dụng kèo bóng đá pháp so sánh nào cho mỗi nền tảng. Để loại bỏ kiểm tra không có thậtthất bạiHồ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 đá pháp kết quả biến thể, sau đó thêm một dòng vàoresultMap
kèo bóng đá pháp.
Mỗi dòng trong kèo bóng đá pháp á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 đá pháp đầu ra nào. Đối với các bài kiểm tra hồi quy tiêu chuẩn, đây luôn làout
11561_11693expr
(nghĩa là một biểu thức chính quy có ẩn^
neo khi bắt đầu). Nó được khớp với tên nền tảng như được in bởiconfig.guess
. Tên kèo bóng đá pháp so sánh là tên cơ sở của kèo bóng đá pháp so sánh kết quả thay thế.
Ví dụ: Một số hệ thống thiếu hoạt độngStrtof
Hàm, trong đó cách giải quyết của chúng tôi gây ra lỗi làm tròn trongfloat4
12194_12263float4-misrounded input.out
, bao gồm kèo bóng đá pháp kết quả được dự kiến trên kèo bóng đá pháp hệ thống này. Để im lặngHồithất bạiHồiTin nhắn trênHP-UX 10nền tảng,resultMap
Bao gồm:
float4: out: hppa.*-hp-hpux10.*= Float4-misrounded input.out
sẽ kích hoạt trên bất kỳ máy nào trong đó đầu ra củaconfig.guess
MatchesHppa.*-HP-HPUX10.*
. kèo bóng đá pháp dòng khác trongresultMap
Chọn kèo bóng đá pháp so sánh biến thể cho các nền tảng khác khi nó phù hợp.
12979_13084phù hợp nhấtTrong số một số kèo bóng đá pháp 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 đá pháp so sánh tiêu chuẩn cho một bài kiểm tra,
và các kèo bóng đá pháp biến thể có têntestName
.out
(trong đótestName
_Digit
.outDigit
là bất kỳ chữ số nào0
-9
). Nếu bất kỳ kèo bóng đá pháp 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; Mặt khác, cái tạo ra Diff ngắn nhất được sử dụng để tạo báo cáo thất bại. (Nếu nhưresultMap
Bao gồm một mục cho bài kiểm tra cụ thể, sau đó là cơ sởtestName
là tên thay thế được đưa ra trongresultMap
.)
Ví dụ, chochar
Kiểm tra, kèo bóng đá pháp so sánhchar.out
Chứa kết quả dự kiến trongC
vàPOSIX
Locales, trong khi kèo bóng đá phápchar_1.out
Chứ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 đá pháp thể nào làđúngHồiĐối với môi trường hiện tại; Nó sẽ chỉ chọn kèo bóng đá pháp thể dường như hoạt động tốt nhất. Do đó, chỉ an toàn nhất khi sử dụng cơ chế này cho các kết quả kèo bóng đá pháp thể mà bạn sẵn sàng xem xét có giá trị như nhau trong tất cả các bối cảnh.