C++ 코드를 테스트할 때 전역변수가 class 타입이면, 해당 class의 생성자에서 비정상 종료되는 경우가 발생할 수 있습니다.
이 경우, 아래의 내용을 확인해야 합니다.
- __get_errno_ptr() 함수가 스텁으로 만들어져 있다면, 스텁 바디에 아래 내용을 추가합니다.
int* x = (int *)calloc(1, sizeof(int)); return x;
- debug 유틸이나 shm(공유 메모리) 관련 유틸을 사용하고 있다면, 파일 경로가 하드코딩되어 있지 않은지 확인이 필요합니다. 하드코딩되어 있다면 파일에 접근하는 시스템 함수들(fprintf 등)을 스텁으로 생성해야 합니다.
- 초기화 시점에 exit 코드를 수행하는지 확인해야 합니다. 만약, exit 코드를 수행한다면 exit 코드를 스텁으로 생성해야 합니다.
- 생성자 스텁에 throw가 있는지 확인해야 합니다. throw가 있다면 제거해야 합니다.
Need more help with this?
Don’t hesitate to contact us here.