Phiên bản được hỗ trợ:hiện tại(17)16 / 15 / 14 / 13
Phiên bản phát triển:18 / Devel
Phiên bản không được hỗ trợ:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1

33.3. Các kèo bóng đá pháp so sánh biến thể#

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ếnkè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ơ 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ậtHồithấ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àoresultMapkè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.out. Giá trị tương ứng với phần mở rộng kèo bóng đá pháp của kèo bóng đá pháp đầ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 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 độngStrtofHàm, trong đó cách giải quyết của chúng tôi gây ra lỗi làm tròn trongfloat4Kiểm tra hồi quy. Do đó, chúng tôi cung cấp một kèo bóng đá pháp so sánh biến thể,float4-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ặngthất bạiTin nhắn trênCygwinNền tảng,resultMapBao gồm:

float4: out:.*-.*-cygwin.*= Float4-misrounded input.out

sẽ kích hoạt trên bất kỳ máy nào trong đó đầu ra củaconfig.guesskhớp.*-.*-Cygwin.*. kèo bóng đá pháp dòng khác trongresultMapChọ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.

Cơ chế lựa chọn thứ hai cho các kèo bóng đá pháp 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ấ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,testName.outvà các kèo bóng đá pháp 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 đá 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;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 đá pháp so sánhchar.outChứa kết quả dự kiến ​​trongCPOSIXđịa phương, trong khi kèo bóng đá phápchar_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 đá pháp thể nào làVangđúngcho 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.

Gửi hiệu chỉnh

Nếu bạn thấy bất cứ điều gì trong tài liệu không chính xác, không khớpMẫu nàyĐể báo cáo vấn đề tài liệu.