유닛 테스트

ReSharper는 NUnit, xUnit.net, MSTest, QUnit 및 Jasmine을 기반으로 한 유닛 테스트의 실행과 디버그를 도와주는 유닛 테스트 러너를 제공합니다. 테스트 탐색하기, 다양한 방법으로 그룹화하기, 개별 세션으로 세분화하기, 테스트 출력 확인하기, 스택 추적에서 소스 코드로 이동하기 등 다양한 작업이 가능합니다.

또한 ReSharper Ultimate을 이용하면 테스트를 연속해서 실행하고, 테스트 범위와 성능을 측정할 수 있습니다.

유닛 테스트 실행 및 디버그

ReSharper는 .NET 및 .NET Core 프로젝트에서 NUnit, XUnitMSTest 프레임워크의 유닛 테스트를 자동으로 탐지합니다. MSpec과 같은 기타 유닛 테스트 프레임워크는 ReSharper 플러그인을 통해 지원됩니다.

ReSharper는 테스트 클래스 및 단일 테스트의 선언 옆에 특수 아이콘을 추가합니다. 이 아이콘을 클릭하면 테스트를 실행 및 디버그할 수 있습니다. 또는 캐럿이 테스트 선언 위에 있을 때 Alt+Enter를 눌러도 됩니다.

테스트는 컨텍스트 메뉴에서도 실행할 수 있습니다. 또한 Visual Studio의 Solution Explorer(솔루션 탐색기)에서도 임의의 유닛 테스트 모음을 실행하거나 디버그할 수 있습니다. 간단히 파일, 폴더, 프로젝트 또는 솔루션을 선택하고 Ctrl+U, R 또는 Ctrl+U, D를 누르면 됩니다. 또는 선택 항목을 마우스 오른쪽 버튼으로 클릭하고 Run unit tests(유닛 테스트 실행) 또는 Debug unit tests(유닛 테스트 디버그)를 선택하세요.

ReSharper의 유닛 테스트 탐색기

유닛 테스트 탐색기

ReSharper는 Unit Test Explorer(유닛 테스트 탐색기)를 제공합니다. 이 도구 창에는 구조화된 유닛 테스트 목록이 표시되어 전체 솔루션에서 테스트 구조를 검토할 수 있습니다. Ctrl+Alt+U 단축키 또는 ReSharper | Windows(창) 메뉴를 통해 트리를 이용할 수 있으며, 트리는 프로젝트를 빌드한 후에 빠르게 채워집니다. Unit Test Explorer를 사용하면 하나 이상의 유닛 테스트 세션에서 어떤 테스트 조합이든 실행할 수 있습니다.

번들형 유닛 테스트 러너

유닛 테스트 세션

ReSharper는 Unit Test Sessions(유닛 테스트 세션) 창에서 유닛 테스트를 실행합니다. 이 도구 창은 몇 개의 유닛 테스트 세션이든 서로 독립적으로 동시에 실행할 수 있도록 설계되었습니다. 세션은 어떤 테스트 조합으로든 구성될 수 있습니다. 디버그 모드에서는 한 번에 하나의 세션만 실행할 수 있습니다.

유닛 테스트 트리는 세션에 속하는 테스트의 구조를 보여주고, 여기에서 통과, 실패 또는 무시된 유닛 테스트만 표시되도록 필터링할 수 있습니다. 테스트를 두 번 클릭하면 해당 테스트의 코드로 이동할 수 있습니다.

진행률 표시줄과 상태 표시줄은 현재 진행률을 보여줍니다. 언제든지 유닛 테스트를 중지, 실행하거나 재빌드하여 다시 실행할 수 있습니다.

미리보기 창을 통해 테스트 결과를 분석하고 실패한 테스트 출력에서 예외를 발생시킨 코드 줄로 이동할 수 있으며, 이 모든 작업을 한 번의 클릭으로 실행할 수 있습니다.

dotCover로 코드 커버리지 분석

dotCover로 코드 커버리지 분석

JetBrains dotCover(ReSharper Ultimate 라이선스로도 사용 가능)를 이용하면 유닛 테스트에 포함되는 솔루션 코드 범위를 쉽게 검색할 수 있습니다.

dotCover가 설치되어 있으면, 선택 범위에서 유닛 테스트의 코드 커버리지를 분석하여 시각화하고 유닛 테스트가 적용되지 않는 코드를 표시합니다. 이는 애플리케이션 개발 및 품질 관리에서 올바른 우선순위를 설정할 때 매우 유용할 수 있습니다.

dotCover로 연속 테스트

dotCover로 연속 테스트

ReSharper Ultimate 또는 dotCover를 사용하는 경우, 연속 테스트를 이용할 수 있습니다. dotCover는 최신 코드 변경으로 영향을 받는 유닛 테스트를 즉시 파악하여 해당 테스트를 자동으로 다시 실행하는 최신 유닛 테스트 워크플로를 제공합니다.

dotCover는 사용자가 파일을 저장하고 솔루션을 구성할 때, 또는 dotCover에 명시적으로 지침을 내리는 즉시 영향을 받는 테스트를 탐지하여 실행할 수 있습니다.

모든 유닛 테스트에서 연속 테스트를 사용하거나, 연속해서 실행할 테스트와 기존 방식으로 실행할 테스트를 명시적으로 지정할 수 있습니다.

dotTrace로 유닛 테스트 프로파일링

또한 강력한 .NET 프로파일링 도구이자 ReSharper Ultimate에 포함된 도구인 JetBrains dotTrace를 통해 Visual Studio의 유닛 테스트 성능을 빠르게 프로파일링할 수 있습니다.

dotTrace가 설치된 경우, ReSharper가 테스트 클래스 및 개별 테스트를 위해 추가한 사이드바 마크를 사용해 에디터에서 직접 프로파일링을 시작할 수 있습니다.

dotMemory Unit으로 메모리 사용 현황 모니터링

유닛 테스트에서 바로 메모리 사용 현황을 분석하려면 JetBrains에서 제공하는 무료 메모리 유닛 테스트 프레임워크인 dotMemory Unit을 사용해 보세요.

dotMemory Unit을 참조하는 즉시, 메모리 트래픽, 메모리 내의 특정 객체 존재 유무, 애플리케이션의 메모리 사용 현황에 대한 기타 지표에 따라 유닛 테스트가 통과하거나 실패하도록 만들 수 있습니다.

단축키 참고사항

이 페이지에 나온 모든 키보드 단축키는 ReSharper의 기본 'Visual Studio' 단축키에서 제공됩니다. ReSharper의 2가지 단축키에 관한 자세한 내용은 ReSharper 문서를 참조하세요.