소스 파일이 xmpl.cpp
(예 : the one described by Fröhlich)이라고 가정합니다. gcc
으로이 파일을 컴파일 할 때 -fprofile-arcs
및 -ftest-coverage
플래그를 사용하면 일반 이진 실행 파일 xmpl
과 gcov 데이터 파일 xmpl.gcno
이 생성됩니다. 그런 다음 프로그램이 실행될 때 다른 gcov 데이터 파일 xmpl.gcna
이 생성됩니다.이 파일에는 실행 중에 수집 된 정보가 들어 있습니다.'expect'로 프로그램을 실행하면 'gcov'데이터가 생성되지 않는 이유는 무엇입니까?
그러나 동일한 프로그램을 실행하는 데 expect 스크립트를 사용하면 아무런 메시지도 표시되지 않습니다. xmpl.gcna
이 생성됩니다. 더 구체적으로 문제는 spawn
명령에 있으며 exec
은 모두 문제가 없습니다 (그렇다면 왜 기대를 사용해야합니까?).
프로젝트에서 몇 가지 테스트를 수행하는 많은 예상 스크립트가 있고 현재 이러한 테스트에 대한 적용 범위 정보가 생성되지 않았기 때문에이 문제를 해결하는 데 관심이 있습니다. 위에서 설명한 예제의 코드는 here을 가져올 수 있습니다.