테스트 환경 구축
json-c(0.13) library, Makefile, valgrind 를 포함한 테스트 환경 구축.
json-c lib를 테스트 환경에 포함시켜 다른 시스템에도 테스트 가능하도록 설계
json-c 함수 샘플링
함수 소스 코드 확인 및 행동 예측
샘플링한 함수를 포함한 테스트 프로그램 작성/예제를 찾아 문제되는 부분 수정
valgrind로 테스트 프로그램 실행하여 검증
결과 확인 + 원인 분석
Makefile을 통해 src 디렉토리 안에 있는 C 프로그램을 json-c 라이브러리를 동적링크해 컴파일하고 실행파일을 생성했다.
Valgrind
Memory leak 유무를 판단하기 위해 Valgrind를 사용해 판단.
Valgrind는 시스템에 설치되어 있는 valgrind를 사용하며 본 테스트에서는 3.11.0 버전을 사용하여 테스트를 진행했다.
gcc
프로그램을 컴파일하기 위해 gcc 컴파일러를 사용하였다.
json-c 코드를 빌드해 나온 라이브러리와 필요한 헤드파일 등을 보관한다. Makefile, mem_check.sh에서 프로그램을 실행하고 빌드할 때 동적으로 링킹하여 사용한다.