32.3. 변형 비교 토토 꽁 머니

일부 테스트는 본질적으로 환경에 따른 결과를 생성하므로 대체 항목을 지정하는 방법을 제공했습니다.예상됨결과 토토 꽁 머니. 각 회귀 테스트에는 다양한 플랫폼에서 가능한 결과를 보여주는 여러 비교 토토 꽁 머니이 있을 수 있습니다. 각 테스트에 어떤 비교 토토 꽁 머니을 사용할지 결정하는 두 가지 독립적인 메커니즘이 있습니다.

첫 번째 메커니즘을 사용하면 특정 플랫폼에 대해 비교 토토 꽁 머니을 선택할 수 있습니다. 매핑 토토 꽁 머니이 있습니다.src/test/regress/resultmap, 각 플랫폼에 사용할 비교 토토 꽁 머니을 정의합니다. 가짜 테스트를 없애기 위해실패특정 플랫폼의 경우 먼저 변형 결과 파일을 선택하거나 만든 다음 행을 추가합니다.결과맵토토 꽁 머니.

매핑 파일의 각 줄은 다음 형식을 따릅니다.

테스트 이름:출력:플랫폼 패턴=비교토토 꽁 머니 이름

테스트 이름은 특정 회귀 테스트 모듈의 이름일 뿐입니다. 출력 값은 확인할 출력 파일을 나타냅니다. 표준 회귀 테스트의 경우 이는 항상 다음과 같습니다.아웃. 값은 출력 토토 꽁 머니의 토토 꽁 머니 확장자에 해당합니다. 플랫폼 패턴은 Unix 도구 스타일의 패턴입니다.expr(즉, 암시적 정규식^시작 부분에 앵커). 다음으로 인쇄된 플랫폼 이름과 일치합니다.config.guess. 비교 토토 꽁 머니명은 대체 결과 비교 토토 꽁 머니의 기본 이름입니다.

예: 일부 시스템에는 작동이 부족합니다.strtof함수, 이에 대한 해결 방법은 다음에서 반올림 오류를 발생시킵니다.플로트4회귀 테스트. 따라서 변형 비교 토토 꽁 머니을 제공합니다.float4-misrounded-input.out, 여기에는 이러한 시스템에서 예상되는 결과가 포함됩니다. 가짜를 침묵시키기 위해실패메시지 켜기HP-UX 10플랫폼,결과맵포함:

float4:out:hppa.*-hp-hpux10.*=float4-misrounded-input.out

다음의 출력이 있는 모든 시스템에서 트리거됩니다.config.guess일치hppa.*-hp-hpux10.*. 다른 줄결과맵적절한 경우 다른 플랫폼에 대한 변형 비교 토토 꽁 머니을 선택하십시오.

변종 비교 파일의 두 번째 선택 메커니즘은 훨씬 더 자동적입니다. 간단히 말해서 다음을 사용합니다.가장 일치하는 항목제공된 여러 비교 토토 꽁 머니 중. 회귀 테스트 드라이버 스크립트는 테스트에 대한 표준 비교 토토 꽁 머니을 모두 고려합니다.테스트 이름.out및 이름이 지정된 변형 토토 꽁 머니테스트 이름_자리.out(여기서자리임의의 한 자리 숫자0-9). 해당 파일이 정확히 일치하면 테스트는 통과된 것으로 간주됩니다. 그렇지 않으면 가장 짧은 diff를 생성하는 것이 실패 보고서를 작성하는 데 사용됩니다. (만약결과맵특정 테스트에 대한 항목을 포함하고 그 다음에는 기본 항목을 포함합니다.테스트 이름에 주어진 대체 이름은결과맵.)

예를 들어,문자테스트, 비교 토토 꽁 머니char.out다음에서 예상되는 결과가 포함되어 있습니다.C그리고POSIX로케일, 토토 꽁 머니char_1.out다른 여러 로케일에 표시되는 대로 정렬된 결과를 포함합니다.

최적 일치 메커니즘은 로케일에 따른 결과에 대처하기 위해 고안되었지만 플랫폼 이름만으로는 테스트 결과를 쉽게 예측할 수 없는 모든 상황에서 사용할 수 있습니다. 이 메커니즘의 한계는 테스트 드라이버가 실제로 어떤 변형인지 알 수 없다는 것입니다.맞습니다현재 환경용; 가장 잘 작동하는 것으로 보이는 변형을 선택합니다. 따라서 모든 상황에서 동등하게 유효하다고 간주하려는 변형 결과에만 이 메커니즘을 사용하는 것이 가장 안전합니다.

수정사항 제출

문서에 올바르지 않은 내용이 있으면 일치하지 않습니다. 특정 기능에 대한 경험이 있거나 추가 설명이 필요한 경우 이용해주세요이 양식문서 문제를 보고합니다.