1

코딩 된 UI + SpecFlow 테스트 프로젝트 (.NET Framework 4)가 있습니다.Windows XP VM에서 코드화 된 UI 테스트 원격 실행

원격 테스트 실행을 원하므로 Visual Test Agent - Controller 환경 설정을 구성했습니다. 내 로컬 컴퓨터가 컨트롤러이고 에이전트 인 가상 컴퓨터가 있습니다. AUT는 Windows XP SP3이 설치된 Windows Embedded 시스템에서 실행됩니다. AUT는 WPF 응용 프로그램입니다.

VM 속성 :

에이전트 컨트롤러 통신이 성공적으로 (에이전트를 설립 - 온라인 , 확인, 컨트롤러 - 실행, 확인, TestSettings.testsettings - 구성, 확인). 테스트 실행은 mstest를 사용하여 수행됩니다.

다음과 같은 오류가 나는 테스트를 실행할 때 표시됩니다

Test Name: CodedUITestMethod1 
Test FullName: Remote.Test.CodedUITest1.CodedUITestMethod1 
Test Source: c:\Users\user\Documents\Visual Studio 2012\Projects\Remote.Test\Remote.Test\CodedUITest1.cs : line 27 
Test Outcome: Failed 
Test Duration: 0:00:01.7131241 

Result Message: Error calling Initialization method for test class Remote.Test.CodedUITest1: System.IO.FileLoadException: Could not load file or assembly 'Microsoft.VisualStudio.TestTools.UITest.Extension.CrossBrowser, Version=11.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. Strong name validation failed. (Exception from HRESULT: 0x8013141A) ---> System.Security.SecurityException: Strong name validation failed. (Exception from HRESULT: 0x8013141A) 
Result StackTrace: 
--- End of inner exception stack trace --- 
at System.Reflection.RuntimeAssembly.nLoadFile(String path, Evidence evidence) 
at System.Reflection.Assembly.LoadFile(String path) 
at Microsoft.VisualStudio.TestTools.UITest.Framework.UITestExtensionPackageManager.LoadAssembly(String assemblyFile) 

정의 코딩 된 UI으로는 not support Windows XP를한다.

위 문제에 대한 해결 방법이 있습니까? 어떤 제안?

c:\Program Files\Common Files\microsoft shared\VSTT\11.0\UITestExtensionPackages\에서 Microsoft.VisualStudio.TestTools.UITest.Extension.CrossBrowser.dll

+2

"지원되지 않음"링크는 Visual Studio 2013 페이지를 보여줍니다. 2012 년 페이지도 비슷한 지원을합니다. XP를 지원하는 2010 페이지를 확인하십시오. 2010 년 DLL이나 2010 에이전트 중 일부를 VM에 적용하여 원하는 것을 얻을 수도 있습니다. 코딩 된 UI 부분의 경우 최신 버전의 Windows에서 VM을 사용하는 것이 더 쉽습니다. – AdrianHHH

+0

@AdrianHHH : 의견을 주셔서 감사합니다! 솔루션은 빌드 서버에서 재현 가능해야합니다 (적절한 종속성, 최소한의 재 작업, 해킹이 없음). 따라서 .dll 조작/대체/덮어 쓰기는 내가 원하는 것이 아닙니다. 공구를 변경하지 마십시오. Windows XP에서 AUT가 실행되고 실제 최종 사용자 내장 머신과 비슷한 (거의 _exact_) 속성을 가진 VM을 사용해야하기 때문에 최신 Windows에서 VM을 사용하는 것은 제외됩니다 (클라이언트). – LeeWay

답변

1

격리 문제를 해결, 감사합니다. 원격 VM에서 작업이 수행되었습니다.

테스트가 실행 중입니다.

+1

여기서 "격리"의 의미를 명확히 할 수 있습니까? 어셈블리를 완전히 제거 했습니까? 테스트 코드에서 해당 어셈블리에 대한 참조를 제거 했습니까? 이 정확한 시나리오를 테스트하고 제공 할 수있는 모든 포인터를 사용할 수 있습니다! –

관련 문제