64 비트 Windows 7의 Visual Studio 2008에서 Nunit 테스트를 실행하고 디버깅하는 방법?
-
07-07-2019 - |
문제
DEV 기계 (WinXP/32bit)를 새로운 제품 (Windows 7/64 비트)으로 교환했습니다. 이제 Inside Visual Studio 2008에서 Nunit 테스트를 실행하는 데 어려움이 있습니다. 최신 빌드를 사용하고 있습니다. 고환.
내가 찾고있는 것은 다음과 같습니다.
- a) win7/64에서 Testdrivennet을 작동시키는 방법
- b) 대체 테스트 러너에 대한 제안을 찾고 있습니다. 무료로 선호합니다.
WinXP/32에서 작동하는 일 (그리고 Win7/64에서 작동하지 않음) :
- vs.net 내부에서 하나의 테스트 방법을 실행하십시오
- VS.NET 내부의 하나의 테스트 방법을 디버깅합니다
- 모든 테스트를 VS.NET 내부의 한 클래스에서 실행하십시오
Win7/64의 증상 :
- 러너 보고서를 테스트하려고 할 때 "0 패스, 0 실패, 0이 건너 뜁니다". 내 수업에서 테스트를 찾을 수없는 것 같습니다.
- TestDriven.NET-2.22.2468 (RTM) 및 2.23.2497 (베타)으로 테스트했습니다. 동일한 결과.
의문:
- Win7/64에 대한 좋은 작업 Nunit 테스트 러너를 제안 할 수 있습니까? 자유 변형이 선호됩니다.
- testdriven.net 러너를 작동시키는 방법이 있습니까?
해결책 2
내 동료는 정확히 같은 문제를 겪었고 이번에는 최소한의 수정을 제공 할 수 있습니다. 나는 여기에 그것을 다시 게시하고있다 - 아마도 다른 사람도 도움이 될 것이다.
문제의 근본 원인은 Source Gear Vault 3.5.x였습니다. 그들의보십시오 지원 포럼 게시물 자세한 내용은.
다음 코드를 레지스트리에 제출하면 비 작업 td.net을 해결했습니다.
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}]
@="IServiceProvider"
[HKEY_CLASSES_ROOT\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}\NumMethods]
@="4"
[HKEY_CLASSES_ROOT\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}\ProxyStubClsid32]
@="{A4A1A128-768F-41E0-BF75-E4FDDD701CBA}"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}]
@="IServiceProvider"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}\NumMethods]
@="4"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}\ProxyStubClsid32]
@="{A4A1A128-768F-41E0-BF75-E4FDDD701CBA}"
다른 팁
TD.NET 2.22.246과 함께 Win7 64 비트를 사용하고 있으며 잘 작동합니다. 다른 비주얼 스튜디오 러너는 MSTEST (32 비트 프로세스로만 실행) 및 테스트 마트릭스 (무료 없음)
64 비트 문제인지 확인하려면 테스트 프로젝트를 X86으로 구축하고 TD.NET을 사용하여 테스트를 실행할 수 있습니다. 이 경우 TD.NET은 32 비트 프로세스로 실행됩니다. 작업 관리자를 사용하여 확인하고 ProcessInvocation.exe를 확인할 수 있습니다.
테스트가 64 비트 문제보다 실행되는 경우. 그것이 실패하면 문제가 다른 곳에있을 수 있습니다. 테스트에서 다른 도구를 사용하고 있습니까? 적용 범위, 조롱 등, 아마도 문제가 다른 곳에 있습니까?