토토 9.3.25 문서화 | ||||
---|---|---|---|---|
PostgreSQL : 문서 : 9.3 : 스포츠 토토 평가 | 롤 토토 : 문서 : 9.3 : 롤 토토 테스트 | 30 장. 회귀 테스트 | 무지개 토토 : 문서 : 9.3 : 테스트 범위 시험 |
일부 테스트 중 일부는 본질적으로 환경 의존적으로 생성되기 때문입니다 결과, 우리는 대체를 지정하는 방법을 제공했습니다"예상"결과 파일. 각 회귀 테스트가 가능합니다 다른 결과를 보여주는 몇 가지 비교 파일이 있습니다 플랫폼. 결정을위한 두 가지 독립적 인 메커니즘이 있습니다 각 테스트에 사용되는 비교 파일.
첫 번째 메커니즘을 통해 비교 파일을 선택할 수 있습니다. 특정 플랫폼. 매핑 파일이 있습니다.10378_10406, 그것은 그것을 정의합니다 각 플랫폼에 사용할 비교 파일. 가짜 테스트를 제거하려면"실패"특정 플랫폼의 경우, 먼저 변형 결과 파일을 선택하거나 만들고 줄을 추가합니다.ResultMap파일.
매핑 파일의 각 줄은 양식입니다
testName : 출력 : 플랫폼 파트 넷 = 비교 필레나 이름
테스트 이름은 특정 회귀 테스트의 이름 일뿐입니다. 기준 치수. 출력 값은 확인할 출력 파일을 나타냅니다. 을 위한 표준 회귀 테스트, 이것은 항상입니다.out. 값은 파일 확장자에 해당합니다 출력 파일. 플랫폼 패턴은 스타일의 패턴입니다. 유닉스 도구expr(즉, 정기적입니다 암시 적 표현^앵커 시작). 에 의해 인쇄 된 플랫폼 이름과 일치합니다.config.guess. 비교 파일 이름은입니다 대체 결과 비교 파일의 기본 이름.
예 : 일부 시스템은 매우 작은 부동 소수점을 해석합니다 언더 플로 오류를보고하는 대신 값이 0으로 값입니다. 이것 에 몇 가지 차이가 발생합니다.float8회귀 테스트. 따라서 변형 비교 파일을 제공합니다.float8-small-is-zero.out, 여기에는 포함됩니다 결과는 이러한 시스템에서 예상됩니다. 가짜를 침묵시키기 위해"실패"메시지 ONOpenBSD플랫폼,ResultMap포함 :
float8 : out : i.86-.*-OpenBsd = float8-small-is-zero.out
출력이있는 모든 기계에서 트리거됩니다config.guess매치i.86-.*-OpenBSD. 다른 줄의ResultMap변형 비교 파일을 선택하십시오 적절한 다른 플랫폼.
변형 비교 파일을위한 두 번째 선택 메커니즘은 다음과 같습니다 훨씬 더 자동 : 단순히를 사용합니다."최고 성냥"제공된 여러 비교 파일 중. 그만큼 회귀 테스트 드라이버 스크립트는 표준을 모두 고려합니다 테스트를위한 비교 파일,TestName.out및 변형 파일이라는TestName_Digit.out(여기서Digit단일 숫자입니다0-9). 그러한 파일이있는 경우 정확히 일치하는 테스트는 통과하는 것으로 간주됩니다. 그렇지 않으면, 하나 가장 짧은 Diff를 생성하면 실패를 생성하는 데 사용됩니다. 보고서. (만약에ResultMap항목을 포함합니다 특정 테스트의 경우 기본TestNameResultMap.)
예를 들어,char테스트, 비교 파일char.out결과를 포함합니다 에서 예상됩니다.CandPOSIX로컬, 파일 중char_1.out나타나는대로 정렬 된 결과를 포함합니다 다른 많은 지역에서.
최고의 경기 메커니즘은 대처하기 위해 고안되었습니다 로케일 의존적 결과이지만 어떤 상황에서도 사용할 수 있습니다. 플랫폼 이름에서 테스트 결과를 쉽게 예측할 수 없습니다. 홀로. 이 메커니즘의 한계는 테스트 드라이버가 실제로 어떤 변형인지 알 수 없습니다"정확한"현재 환경의 경우; 그것은 단지 될 것입니다 가장 잘 작동하는 변형을 선택하십시오. 따라서 가장 안전합니다 이 메커니즘을 기꺼이 원하는 변형 결과에만 사용하십시오. 모든 상황에서 똑같이 유효하다고 생각합니다.
이전 | 배트맨 토토 : 문서 : 9.3 : 배트맨 토토 9.3.25 문서화 | 다음 |
테스트 평가 | 롤 토토 : 문서 : 9.3 : 롤 토토 테스트 | 테스트 범위 시험 |