일부 테스트 중 일부는 본질적으로 환경 의존적 결과를 생성하기 때문에 대체를 지정하는 방법을 제공했습니다“예상”결과 범퍼카 토토. 각 회귀 테스트에는 다른 플랫폼에서 가능한 결과를 보여주는 몇 가지 비교 범퍼카 토토이있을 수 있습니다. 각 테스트에 사용되는 비교 범퍼카 토토을 결정하기위한 두 가지 독립적 인 메커니즘이 있습니다.
첫 번째 메커니즘을 사용하면 특정 플랫폼에서 비교 범퍼카 토토을 선택할 수 있습니다. 매핑 범퍼카 토토이 있습니다.src/test/regess/resultmap
, 각 플랫폼에 사용할 비교 범퍼카 토토을 정의합니다. 가짜 테스트를 제거하려면“실패”특정 플랫폼의 경우 먼저 변형 결과 범퍼카 토토을 선택하거나 만들고에 줄을 추가합니다.ResultMap
범퍼카 토토.
매핑 범퍼카 토토의 각 줄은 양식입니다
testName : 출력 : 플랫폼 파트 넷 = 비교 필레나 이름
테스트 이름은 특정 회귀 테스트 모듈의 이름 일뿐입니다. 출력 값은 확인할 출력 범퍼카 토토을 나타냅니다. 표준 회귀 테스트의 경우 항상입니다.out
. 값은 출력 범퍼카 토토의 범퍼카 토토 확장에 해당합니다. 플랫폼 패턴은 Unix 도구 스타일의 패턴입니다expr
(즉, 암시 적 표현)^
시작시 고정). 에 의해 인쇄 된 플랫폼 이름과 일치합니다.config.guess
. 비교 범퍼카 토토 이름은 대체 결과 비교 범퍼카 토토의 기본 이름입니다.
예 : 일부 시스템이 작동하지 않습니다strtof
함수, 해결 방법은에서 반올림 오류를 유발합니다.float4
회귀 테스트. 따라서 변형 비교 범퍼카 토토을 제공합니다.float4-misrounded-input.out
, 여기에는 이러한 시스템에서 예상되는 결과가 포함됩니다. 가짜를 침묵시키기 위해“실패”메시지 ONCygwin플랫폼,ResultMap
포함 :
float4 : out :.*-.*-Cygwin.*= float4-misrounded-input.out
출력이있는 모든 기계에서 트리거됩니다config.guess
매치.*-.*-Cygwin.*
. 다른 줄의ResultMap
적절한 다른 플랫폼의 변형 비교 범퍼카 토토을 선택합니다.
변형 비교 범퍼카 토토의 두 번째 선택 메커니즘은 훨씬 자동입니다.“최고의 경기”제공된 여러 비교 범퍼카 토토 중. 회귀 테스트 드라이버 스크립트는 테스트의 표준 비교 범퍼카 토토을 모두 고려합니다.
및 변형 범퍼카 토토이라는TestName
.out
(TestName
_숫자
.outDigit
단일 숫자입니다0
-9
). 그러한 파일이 정확히 일치하는 경우 테스트는 통과하는 것으로 간주됩니다. 그렇지 않으면 가장 짧은 차이를 생성하는 것이 실패 보고서를 작성하는 데 사용됩니다. (만약에ResultMap
특정 테스트에 대한 항목이 포함 된 다음 기본TestName
ResultMap
.)
예를 들어,char
테스트, 비교 범퍼카 토토char.out
C
andposix
로컬, 범퍼카 토토 중char_1.out
다른 많은 지역에 나타나는대로 분류 된 결과를 포함합니다.
가장 좋은 일치 메커니즘은 로케일 의존적 결과에 대처하기 위해 고안되었지만 플랫폼 이름만으로는 테스트 결과를 쉽게 예측할 수없는 상황에서 사용할 수 있습니다. 이 메커니즘의 한계는 테스트 드라이버가 실제로 어떤 변형인지 알 수 없다는 것입니다“정확한”현재 환경의 경우; 가장 잘 작동하는 변형을 선택합니다. 따라서이 메커니즘을 모든 상황에서 똑같이 유효한 것으로 간주 할 변형 결과에 대해서만이 메커니즘을 사용하는 것이 가장 안전합니다.
문서에 올바른 것이 없으면 일치하지 않습니다. 특정 기능에 대한 귀하의 경험 또는 추가 설명이 필요합니다. 사용이 양식문서 문제를보고하려면