우리는 수년에 걸쳐 주요 프로그램에 대해 상당한 수의 단위 테스트를 구축했습니다. 수천 문제는 테스트가 너무 많기 때문에 어떤 테스트를했는지 명확하게 알 수 없다는 것입니다. 테스트에서 약한 부분 (또는 중복 된 부분)을 모르기 때문에 문제가됩니다.
우리의 응용 프로그램은보고 엔진입니다. 따라서 구문 분석을 테스트하는 데 사용되는 템플릿 (모든 테이블 속성을 읽습니까)을 병합하고 데이터를 병합하고 (병합에 올바른 테이블 속성을 유지 한 경우) 최종 페이지의 서식을 지정합니다 (테이블이 페이지에 올바르게 배치됨) ) 및 / 또는 출력 형식 (생성 된 DOCX 파일 임)입니다.
우리가 테스트해야 할 것을 추가하십시오. 표 셀 주위를 채 웁니다 (보고서 디자인에는 Word, Excel 및 PowerPoint를 사용합니다). 셀 내 테이블, 세로 병합 된 셀, 가로로 병합 된 셀, 세로 및 가로로 병합 된 셀, 내부 테이블에 세로 및 가로로 병합 된 셀이있는 테이블이 포함 된 페이지 나누기에서 패딩을 테스트해야합니다. 한 페이지에서 나옵니다.
그 시험은 어떤 범주에 들어가나요? 표 패딩, 페이지 나누기, 중첩 셀, 세로 병합 된 셀, 가로 병합 된 셀 또는 다른 것?
그리고 우리는 어떻게 이러한 범주를 문서화하고, 단위 테스트 등을 명명합니까?
업데이트 : 많은 사람들이 우리가 전체 범위를 가지고 있는지 확인하기 위해 범위 도구를 사용하도록 제안했습니다. 불행히도 버그는 특정 조합으로 인한 경향이 있기 때문에 우리의 경우에는 제한적으로 사용되므로 모든 테스트가 완료되었지만 해당 조합은 아닙니다.
예를 들어, 어제 고객은 템플릿에서 forEach 루프의 끝에서 Word 책갈피를 시작하고 (Word 문서) 다음 forEach 루프의 시작에서 종료했습니다. 이것은 모두 단위 테스트가있는 코드를 사용했지만 북마크를 확장하는 템플릿의 조합이 25 번 시작되고 10 번 끝났다고 생각하지 않았습니다 (두 forEach 루프는 다른 행 수를 가짐).