VS2012 + 2013 용 NUnit 테스트 어댑터를 설치했습니다. 처음 설치할 때 어댑터 테스트가 표시되었지만 오늘 어떤 이유로 표시가 중지되었습니다. 빌드, 재 구축, 청소, 재시작 후 테스트 탐색기에 아무것도 나타나지 않습니다. 왜 이런 일이 일어날까요? VS2013 Ultimate를 사용하고 있습니다.
VS2012 + 2013 용 NUnit 테스트 어댑터를 설치했습니다. 처음 설치할 때 어댑터 테스트가 표시되었지만 오늘 어떤 이유로 표시가 중지되었습니다. 빌드, 재 구축, 청소, 재시작 후 테스트 탐색기에 아무것도 나타나지 않습니다. 왜 이런 일이 일어날까요? VS2013 Ultimate를 사용하고 있습니다.
답변:
테스트 프로젝트가 64 비트 플랫폼을 대상으로 설정하면 테스트가 NUnit 테스트 어댑터에 표시되지 않습니다.
당신이 사용하는 경우 NUnit3 + 버전을 새로운 테스트 어댑터를 사용할 수 있습니다.
"도구-> 확장 및 업데이트-> 온라인"으로 이동하여 " NUnit3 테스트 어댑터"를 검색 한 다음 설치하십시오.
내 테스트 어셈블리는 64 비트입니다. Visual Studio 2012 상단의 메뉴 모음에서 '테스트'-> '테스트 설정'-> '기본 프로세서 아키텍처'-> 'X64'를 선택할 수있었습니다. 'Build'메뉴에서 'Rebuild Solution'후에 테스트 탐색기에서 모든 테스트를 볼 수있었습니다. 바라건대 이것은 미래의 다른 사람을 도울 것입니다 = D.
NUnit 버전이 일치하지 않는지 확인하십시오. 현재 사용 가능한 NUnit 테스트 어댑터는 NUnit 버전 2.6.4 이하에서만 작동합니다. 버전 3.x에서 NUnit을 다운 그레이드하려면 패키지 관리자 콘솔> 업데이트 패키지 NUnit -version 2.6.4로 이동하십시오.
http://jeremybytes.blogspot.co.ke/2015/11/review-of-unit-testing-makes-me-faster.html
내 상황에서 'NUnit3 테스트 어댑터'가 비활성화되었습니다. 다시 활성화하려면 메뉴로 이동하십시오.
도구-> 확장 및 업데이트 ...
왼쪽에서 'Installed'-> 'All'을 선택하십시오.
오른쪽 상단에서 'nunit'을 검색하십시오.
'NUnit3 Test Adapter'가 설치되어 있으면 찾은 항목과 함께 활성화 / 비활성화 할 수 있습니다.
이 답변은 매우 기본적으로 보이지만 처음에는 완전히 명확하지 않았습니다. 솔루션을 다시 빌드하는 경우 솔루션을 빌드하도록 구성된 프로젝트 만 빌드합니다.Build -> Configuration Manager
이것은 내 문제였습니다. 빌드 구성 설정이나 테스트 프로젝트가 빌드되지 않은 원인이 무엇인지 실수로 변경해야합니다 (이전의 경우). 그래서 Test Explorer
창은 오래된 dll을보고있었습니다. 이 작업을 수행 한 후 Clean
대부분의 테스트가 사라지고 폴더가 rebuild
다시 검사 되지 않은 후에 다시 나타나지 않는 것을 알게 된 것은 나에게 분명해 bin
졌습니다.
작업 설정 (솔루션에 따라 NUnit2 및 NUnit3 및 2012 년과 2017 년에 여러 버전의 Visual Studio)이 있었고 어느 날 갑자기 작동이 중단되었습니다. 솔루션이나 VS 버전에서 테스트가 감지되지 않았습니다.
제 경우에는 삭제하는 데 도움이되었습니다 %localappdata%\Temp\VisualStudioTestExplorerExtensions
. VS를 다시 시작한 후 모든 것이 이전과 같이 작동했습니다.
VS 2017 및 .net 코어를 사용하는 경우 여기 에서 말한 것처럼 테스트 프레임 워크 NUnit 3.6.1 , 테스트 실행기 NUnit3TestAdapter 3.8.0-alpha1 및 테스트 SDK Microsoft.NET.Test.Sdk 에 대한 참조를 추가해야합니다. 15.0.0 .
NUnitTestAdapter.WithFramework를 사용하면 NUnit 및 NUnit 어댑터의 버전간에 불일치가 거의 없는지 확인합니다 (즉, "그냥 작동합니다").
[TestFixureSetUp] 및 [Test]가 명시되어 있는지 확인하십시오
시험 수업에서
견본:
namespace ClassLibrary1
{
public class SimpleCalculator
{
public Calculator _calculator;
[TestFixtureSetUp]
public void initialize()
{
_calculator = new Calculator();
}
[Test]
public void DivideTest()
{
int a = 10;
int b = 2;
int expectedValue = a/b;
int actualValue = _calculator.Divide(a, b);
Assert.AreEqual(expectedValue, actualValue, "Functionality not working properly!");
}
}
}
테스트가 발견되지 않는 비슷한 문제가있었습니다. 올바른 NUnit 버전이 있고 NUnit과 어댑터간에 버전이 일치하며 테스트에 올바르게 태그가 지정되었습니다. 관리자가 아닌 VS 2017 Enterprise를 실행했습니다. 관리자로 VS를 시작한 후 테스트가 나타났습니다.
나도이 문제가 있었지만 원인이 다릅니다. F2017에서 VS2017을 사용하고 있습니다.
첫째, Visual Studio의 콘솔은 테스트를 찾을 수없는 이유를 충분히 설명하지 않습니다. 테스트와 함께 DLL을로드하는 데 실패합니다. 따라서 명령 줄에서 NUnit3console.exe를 사용하면 자세한 내용을 알 수 있습니다.
필자의 경우 테스트 어댑터가 최신 버전의 F # Core DLL (4.4.1.0) (F # 4.1)을 찾고 있었지만 여전히 4.4.0.0 (F # 4.0)을 사용하고 있기 때문입니다. 그래서 방금 이것을 테스트 프로젝트의 app.config에 추가했습니다.
<dependentAssembly>
<assemblyIdentity name="FSharp.Core" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-65535.65535.65535.65535" newVersion="4.4.0.0" />
</dependentAssembly>
즉, 이전 F # 코어로 리디렉션합니다.
갑자기 테스트 탐색기 창에 테스트가 나타나지 않았을 때도 같은 문제가있었습니다. "NUnit3TestAdapter"의 업데이트 버전이 있습니다
많은 검색과 노력 끝에 프로젝트 속성에서 다음 값을 설정해야한다는 것을 알았습니다. [솔루션 탐색기 창 : 프로젝트> 속성을 마우스 오른쪽 버튼으로 클릭] 빌드 탭에서 Platform = x64를 설정하고 Platform target = x86 또는 모든 CPU 빌드 프로젝트 및 모든 테스트가 테스트 탐색기 창에 나타납니다.
중요 사항 : 출력 창에서 다음 메시지를 본 후 해결책을 찾았습니다.
"테스트 실행에는 Framework Framework45 및 플랫폼 X86 용으로 구축 된 DLL이 사용됩니다. 다음 DLL은 실행에 포함되지 않습니다. AutomationTests.dll은 Framework Framework45 및 플랫폼 X64 용으로 구축되었습니다."