테스트 탐색기를 사용하여 기존 C++ 응용 프로그램 단위 테스트
기존 응용 프로그램을 변경 하기 전에 사용자는 단위 테스트 적용 범위 있는지 확인을 하는 것이 좋습니다.이 버그 내용을 내놓았습니다 신뢰도 제공 합니다.응용 프로그램에서 단위 테스트를 아직 설치 하지 않은 경우이 항목에서 설명한 기술을 사용 하 여 추가할 수 있습니다.이 항목에서는 기존 Visual C++ 코드에 대 한 단위 테스트를 추가 하는 방법에 설명 Microsoft Visual Studio 2012에서 시작 하 여 코드 및 다음 만들기를 테스트 하는 방법을 결정 쓰고 마지막으로 테스트를 실행 합니다.
코드를 테스트 하는 방법을 결정 합니다.
기존 C++ 프로젝트를 열고 검사 단위 테스트를 추가 하는 방법을 결정 합니다.코드에서 종속성을 확인 하 고 도움이 도움말 부분에 작용 하는 방법을 이해 하는 일부 모델링 도구를 사용 할 수 있습니다.자세한 내용은 코드 시각화 및 이해를 참조하십시오.
변경 내용을 작은 작업을 구분 하는 것이 좋습니다.각 앞 작은 변경, 그대로 유지 되는 동작의 측면에 대 한 단위 테스트를 작성 합니다.이러한 테스트 통과 변경한 후에 계속 됩니다.예를 들어,이 사람 목록을 성 대신 이름으로 정렬 하는 정렬 기능을 변경 하는 경우 출력에 모든 입력된 이름이 나타나는지 확인 하는 단위 테스트를 작성할 수 있습니다.변경 된 후 새 동작에 대 한 새 단위 테스트를 추가 하려는.
실용적인 경우 내보낸 함수에만 단위 테스트를 사용 해야 합니다.하지만 전체 응용 프로그램의 작은 부분만 변경 하는 경우 다음 내보낼 수 함수 사용할 수 있습니다.예를 들어, 내부 함수를 호출 하는 테스트 또는 테스트 설정 및 내부 변수 값을 가져올 할 수 있습니다.
테스트할 인터페이스 노출에 따라 제품 코드를 테스트 하는 몇 가지 방법이 있습니다.다음 방법 중 하나를 선택 합니다.
단위 테스트는 테스트 대상 코드에서 내보낸 함수에만 사용 합니다.
별도 테스트 프로젝트에 추가 합니다.테스트 프로젝트에 테스트 프로젝트에 대 한 참조를 추가 합니다.이동 하는 프로시저 코드 프로젝트를 참조 하는 테스트 프로젝트를 만들려면.
테스트 대상 코드를.exe 파일로 이루어져 있습니다.
별도 테스트 프로젝트에 추가 합니다.출력 개체 파일에 링크 합니다.이동 하는 프로시저 코드 개체 파일을 참조 하는 테스트 프로젝트를 만들려면.
단위 테스트는 전용 함수 및 데이터를 사용 해야 하 고 테스트 대상 코드를 정적 라이브러리로 빌드하기.
.Lib 파일을 컴파일할 수 있도록 테스트 프로젝트를 변경 합니다.테스트 프로젝트를 참조 하는 별도 테스트 프로젝트에 추가 합니다.이 이렇게 허용 테스트 전용 멤버를 사용 하지만 별도 프로젝트에서 테스트를 계속 유지 하는 이점이 있습니다.그러나이 동적 연결 라이브러리 (.dll) 있어야 일부 응용 프로그램에 적합 한 수 있습니다.
이동 하는 프로시저 정적 라이브러리를 테스트 대상 코드를 변경 하려면.
개인 함수 및 데이터를 단위 테스트를 사용 해야 하는 동적 연결 라이브러리 (DLL) 코드를 빌드해야 합니다.
제품 코드는 같은 프로젝트에서 단위 테스트를 추가 합니다.이동 하는 프로시저 같은 프로젝트에서 단위 테스트를 추가 하려면.
테스트 만들기
테스트 대상 코드가 정적 라이브러리를 변경 하려면
테스트, 테스트 프로젝트에서 내보내집니다 멤버를 사용 해야 및 동적 라이브러리로 테스트 프로젝트를 빌드할 경우 정적 라이브러리로 변환 하는 것이 좋습니다.
솔루션 탐색기에서 테스트 프로젝트의 바로 가기 메뉴에서 선택 속성.프로젝트 속성 창이 열립니다.
선택 구성 속성, 일반.
설정 구성 형식 에 정적 라이브러리 (.lib).
절차를 계속 내보낸된 함수에 대 한 테스트 프로젝트를 만들려면.
테스트 프로젝트에서 내보낸 함수를 참조 하려면
다음 프로젝트 테스트에서 테스트 하려는 함수를 내보내는지 코드 프로젝트에 테스트 프로젝트에서 참조를 추가할 수 있습니다.
C + + 테스트 프로젝트를 만듭니다.
- 에 파일 메뉴를 선택 New, 프로젝트, Visual C++,테스트, C++ 단위 테스트 프로젝트.
솔루션 탐색기에서 테스트 프로젝트의 바로 가기 메뉴에서 선택 참조.프로젝트 속성 창이 열립니다.
선택 공용 속성, 프레임 워크 및 참조, 다음 선택은 새 참조 추가 단추.
선택 프로젝트, 및 프로젝트를 테스트 하려면 다음.
추가 단추를 선택합니다.
테스트 프로젝트의 등록 정보에서 위치에서 테스트 프로젝트를 포함 하는 디렉터리를 추가 합니다.
선택 구성 속성, VC + + 디렉터리, 디렉터리는.
선택 편집, 다음 헤더 디렉터리에서 테스트 프로젝트를 추가 합니다.
이동 단위 테스트 작성.
개체 또는 라이브러리 파일에 테스트를 연결 하려면
코드 테스트에서 테스트 하려는 함수 내보내지 않습니다 경우 출력을 추가할 수 있습니다 .obj 또는 .lib 파일에는 테스트 프로젝트의 의존 관계입니다.
C + + 테스트 프로젝트를 만듭니다.
- 에 파일 메뉴를 선택 New, 프로젝트, Visual C++,테스트, C++ 단위 테스트 프로젝트.
솔루션 탐색기에서 테스트 프로젝트의 바로 가기 메뉴에서 선택 속성.프로젝트 속성 창이 열립니다.
선택 구성 속성, 링커, 입력, 추가 종속성.
선택 편집에 이름을 추가 하 고는 .obj 또는 .lib 파일.전체 경로 이름을 사용 하지 않습니다.
선택 구성 속성, 링커, 일반, 추가 라이브러리 디렉터리.
선택 편집, 디렉터리 경로를 추가 하 고 있는 .obj 또는 .lib 파일.일반적으로 경로 테스트 프로젝트의 빌드 폴더 내에 있습니다.
선택 구성 속성, VC + + 디렉터리, 디렉터리는.
선택 편집, 다음 헤더 디렉터리에서 테스트 프로젝트를 추가 합니다.
이동 단위 테스트 작성.
동일한 프로젝트에서 단위 테스트를 추가 하려면
머리글 및 단위 테스트에 필요한 라이브러리 파일을 포함 하도록 제품 코드 프로젝트 속성을 수정 합니다.
솔루션 탐색기에서 테스트 프로젝트의 바로 가기 메뉴에서 속성을 선택 합니다.프로젝트 속성 창이 열립니다.
선택 구성 속성, VC + + 디렉터리.
포함 및 라이브러리 디렉터리를 편집 하십시오.
포함 디렉터리
$(VCInstallDir)UnitTest\include;$(IncludePath)
라이브러리 디렉터리
$(VCInstallDir)UnitTest\lib;$(LibraryPath)
C + + 단위 테스트 파일을 추가 합니다.
- 솔루션 탐색기에서 프로젝트의 바로 가기 메뉴에서 선택 추가, 새 항목에서 다음을 선택 하 고 C++ 단위 테스트.
이동 단위 테스트 작성.
단위 테스트 작성
각 단위 테스트 코드 파일에 추가 된 #include 테스트 프로젝트의 헤더에 대 한 문의.
테스트 클래스와 메서드는 단위 테스트 코드 파일을 추가 합니다.예를 들면 다음과 같습니다.
#include "stdafx.h" #include "CppUnitTest.h" #include "MyProjectUnderTest.h" using namespace Microsoft::VisualStudio::CppUnitTestFramework; namespace MyTest { TEST_CLASS(MyTests) { public: TEST_METHOD(MyTestMethod) { Assert::AreEqual(MyProject::Multiply(2,3), 6); } }; }
자세한 내용은 테스트 탐색기를 사용하여 네이티브 코드 단위 테스트를 참조하십시오.
테스트를 실행 합니다.
에 보기 메뉴를 선택 기타 Windows, 테스트 탐색기.
테스트 탐색기에서 선택 하 여 를 실행 하는 모든.
자세한 내용은 퀵 스타트: 테스트 탐색기를 사용한 테스트 구동 방식 개발를 참조하십시오.