2016-07-19 1 views
5

Visual Studio 2015에서 "단위 테스트 만들기"에 대한 마우스 오른쪽 클릭 컨텍스트 메뉴에 기존 테스트 프로젝트를 어떻게 추가합니까?Visual Studio 2015의 "단위 테스트 만들기"컨텍스트 메뉴에 테스트 프로젝트를 추가하려면 어떻게합니까?

테스트 프로젝트 중 하나만 보여줍니다 (프로젝트는 마우스 오른쪽 버튼 클릭 컨텍스트 액션을 사용하여 생성되었습니다). 다른 프로젝트는 새 프로젝트 마법사를 사용하여 생성되었으므로 표시되지 않습니다.

Missing Projects Available Unit Test Projects

드롭 다운 목록에 기존의 단위 테스트 프로젝트를 추가 할 수있는 방법이 있습니까?

답변

1

I는 필수입니다 만, 아래 나를 Intellitest에 기존 프로젝트를 추가 할 수있는 단계있는 단계 아래로 고정하지 않은 목록 "단위 테스트 만들기"

  • 참조 Microsoft.Pex.Framework 조립
  • Properties 프로젝트의 특수 폴더에 "PexAssemblyInfo.cs"파일을 추가하십시오. 그에 따라 편집하십시오. .csproj 파일에서
  • 는, { "추가 .csproj 파일에서 (아마 필요 없음) <PropertyGroup> 노드
  • 에, 3AC096D0-를 .csproj 파일에서 <PropertyGroup> 노드
  • 에, <TestProjectType>"UnitTest"</TestProjectType> 태그를 추가 <IsCodedUITest>False</IsCodedUITest> 태그를 추가 A1C2-E12C-1390-A8335801FDAB} "(테스트 프로젝트 형식)

편집 태그 <ProjectTypeGuids>에 : 샘플 PexAssemblyInfo.cs의 conten t

using Microsoft.Pex.Framework.Coverage; 
using Microsoft.Pex.Framework.Creatable; 
using Microsoft.Pex.Framework.Instrumentation; 
using Microsoft.Pex.Framework.Settings; 
using Microsoft.Pex.Framework.Validation; 

// Microsoft.Pex.Framework.Settings 
[assembly: PexAssemblySettings(TestFramework = "xunit-2.0")] 

// Microsoft.Pex.Framework.Instrumentation 
[assembly: PexAssemblyUnderTest("{YOUR-PROJECT-NAME}")] 
[assembly: PexInstrumentAssembly("System.Runtime.Extensions")] 
[assembly: PexInstrumentAssembly("System.Linq.Expressions")] 
[assembly: PexInstrumentAssembly("System.Threading")] 
[assembly: PexInstrumentAssembly("System.Reflection.Extensions")] 
[assembly: PexInstrumentAssembly("System.Reflection")] 
[assembly: PexInstrumentAssembly("System.Diagnostics.Debug")] 
[assembly: PexInstrumentAssembly("System.Runtime")] 
[assembly: PexInstrumentAssembly("System.Threading.Tasks")] 
[assembly: PexInstrumentAssembly("System.Collections")] 

// Microsoft.Pex.Framework.Creatable 
[assembly: PexCreatableFactoryForDelegates] 

// Microsoft.Pex.Framework.Validation 
[assembly: PexAllowedContractRequiresFailureAtTypeUnderTestSurface] 
[assembly: PexAllowedXmlDocumentedException] 

// Microsoft.Pex.Framework.Coverage 
[assembly: PexCoverageFilterAssembly(PexCoverageDomain.UserOrTestCode, "System.Runtime.Extensions")] 
[assembly: PexCoverageFilterAssembly(PexCoverageDomain.UserOrTestCode, "System.Linq.Expressions")] 
[assembly: PexCoverageFilterAssembly(PexCoverageDomain.UserOrTestCode, "System.Threading")] 
[assembly: PexCoverageFilterAssembly(PexCoverageDomain.UserOrTestCode, "System.Reflection.Extensions")] 
[assembly: PexCoverageFilterAssembly(PexCoverageDomain.UserOrTestCode, "System.Reflection")] 
[assembly: PexCoverageFilterAssembly(PexCoverageDomain.UserOrTestCode, "System.Diagnostics.Debug")] 
[assembly: PexCoverageFilterAssembly(PexCoverageDomain.UserOrTestCode, "System.Runtime")] 
[assembly: PexCoverageFilterAssembly(PexCoverageDomain.UserOrTestCode, "System.Threading.Tasks")] 
[assembly: PexCoverageFilterAssembly(PexCoverageDomain.UserOrTestCode, "System.Collections")] 
+0

PexAssemblyInfo.cs는 무엇입니까? – Silthus

+0

테스트중인 어셈블리, 참조 된 어셈블리 등의 Pex 관련 설정을 정의합니다. 자동으로 생성 된 Intellitest 프로젝트에서 복사/붙여 넣기를 할 수 있습니다. – Alexis

+0

PEX 또는 유사한 이름의 어셈블리를 찾을 수 없습니다. 또한 마법사를 통해 Xunit 테스트 프로젝트를 만들면 PexAssemblyInfo.cs 파일이 생성되지 않습니다. 그리고 TestProjectType 및 IsCodedUiTest 행을 추가해도 마법사에서 프로젝트가 표시되지 않습니다. – Silthus

관련 문제