2009-03-31 9 views
0

최근에 MS Visual Studio로 C++로 작성된 기존 코드를 유지 관리하고 개선하기위한 새로운 작업을 받았습니다. 이 코드는 exe 파일 (DLL이 아님)에 빌드됩니다. 코드에 대한 단위 테스트를 추가하고 테스트 프로젝트를 구성하는 방법에 문제가 있습니다. 기본적으로 저는 2 개의 프로젝트를 원합니다. 하나는 원래 프로젝트이고 두 번째 프로젝트는 테스트 프로젝트입니다.기존 코드에 대한 단위 테스트 구성

나는 보통 테스트 대상이 DLL에 내장되어있을 때 테스트 프로젝트에서 메인 프로젝트에서 빌드 된 lib를 정적으로 링크해야하고 테스트중인 기능에 액세스 할 수 있다는 것을 쉽게 알았다. 그러나 테스트 대상이 exe 파일 일 때 어떻게 수행 할 수 있습니까?

답변

1

분명히 코드를 공유하는 프로젝트에 솔루션을 배치 할 수 있습니다. 한 프로젝트가 exe로 출력하고 다른 프로젝트는 DLL로 출력합니까?

0

프로젝트 산출물이 무엇이든 단위 테스트는 가장 작은 단위 인 기능을 테스트합니다. 일반적으로 단위 테스트는 정렬 (테스트 환경 만들기), 동작 (테스트중인 메서드 호출), Assert (메서드가 예상대로 동작하는지 확인) 등의 A 패턴을 따릅니다.

가능한 프로젝트 구조는 여러 가지가 있습니다. DLL, 생산 실행 파일 및 단위 테스트 프로그램으로 컴파일되도록 프로젝트를 수정하십시오. 실행 소스는 가능한 한 작아야합니다. Application 개체를 만드는 main() 함수 일 수 있습니다. 또한 DLL, 응용 프로그램 및 테스트를위한 세 개의 프로젝트가있을 수 있습니다.

다른 대안은 단위 테스트를 실행 파일에 포함시키고이를 호출 할 수있는 수단을 갖는 것입니다. 특별한 --unit-test 매개 변수가 있습니다.