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 soi kèo bóng đá truoctran cách để chỉ định thay thếHồidự kiếnHồisoi kèo bóng đá truoctran kết quả. Mỗi bài kiểm tra hồi quy có thể có một số soi kèo bóng đá truoctran 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 soi kèo bóng đá truoctran so sánh được chọn cho các nền tảng cụ thể. Có một soi kèo bóng đá truoctran ánh xạ,src/test/repress/resultMap
, xác định soi kèo bóng đá truoctran so sánh nào sẽ sử dụng cho mỗi nền tảng. Để loại bỏ kiểm tra không có thậtThấ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 soi kèo bóng đá truoctran kết quả biến thể, sau đó thêm một dòng vàoresultMap
soi kèo bóng đá truoctran.
Mỗi dòng trong soi kèo bóng đá truoctran á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 soi kèo bóng đá truoctran đầu ra nào.out
. Giá trị tương ứng với phần mở rộng soi kèo bóng đá truoctran của soi kèo bóng đá truoctran đầu ra.expr
(nghĩa là một biểu thức chính quy với một ẩn úy^
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 soi kèo bóng đá truoctran so sánh là tên cơ sở của soi kèo bóng đá truoctran so sánh kết quả thay thế.
Ví dụ: Một số hệ thống diễn giải soi kèo bóng đá truoctran 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 trongfloat8
Kiểm tra hồi quy. Do đó, chúng tôi cung cấp một soi kèo bóng đá truoctran so sánh biến thể,float8-small-is-Zero.out
, bao gồm soi kèo bóng đá truoctran kết quả được dự kiến trên soi kèo bóng đá truoctran hệ thống này. Để im lặngthất bạiTin nhắn trênOpenBSDNền tảng,resultMap
bao gồm:
Float8: Out: I.86-.
sẽ kích hoạt trên bất kỳ máy nào trong đó đầu ra củaconfig.guess
khớpi.86-.*-OpenBSD
. soi kèo bóng đá truoctran dòng khác trongresultMap
Chọn soi kèo bóng đá truoctran 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 soi kèo bóng đá truoctran so sánh biến thể tự động hơn nhiều: nó chỉ đơn giản là sử dụngHồiphù hợp nhấtxôngTrong số một số soi kèo bóng đá truoctran 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ả soi kèo bóng đá truoctran so sánh tiêu chuẩn cho một bài kiểm tra,
và các soi kèo bóng đá truoctran 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ỳ soi kèo bóng đá truoctran 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;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, soi kèo bóng đá truoctran so sánhchar.out
Chứa kết quả được mong đợi trongC
vàPOSIX
Locales, trong khi soi kèo bóng đá truoctranchar_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 soi kèo bóng đá truoctran thể nào làHồiđúngHồiĐối với môi trường hiện tại; Nó sẽ chỉ chọn soi kèo bóng đá truoctran thể dường như hoạt động tốt nhất.