6

Jenkins와 함께 Windows 저장소 응용 프로그램과의 지속적인 통합을 시도하고 있습니다. Jenkins는 Linux 컴퓨터에 설치됩니다 (iOS 및 Android와 같은 다른 프로젝트로 인해). Windows 프로젝트를 관리하기 위해 Windows 8 64 비트 프로 (WP8 프로젝트는이 컴퓨터에 빌드 됨)에 빌드 시스템을 설치했습니다. WIndows Store 응용 프로그램에이 컴퓨터를 사용하고 싶습니다.Windows 8의 지속적인 통합 Jenkins와의 Store 응용 프로그램

처음에 저는 (내 AppPackages 폴더 생성에 사용 된) msbuild를 사용하여 프로젝트를 만들었습니다. 그럼 난 그 후

CertUtil -addstore root <FILE.cer> 

와 인증서 (.CER)를 받아, 나는 응용 프로그램 (.appx)에 vstest.console.exe 사용했습니다. 이 실행 파일은 대화 형 서비스에서 실행해야하므로 다른 exe로 대화 형 세션에 액세스하고 vstest.console.exe를 실행합니다 (이 실행 파일은 http://www.codeproject.com/Articles/110568/Alternative-way-for-Window-services-to-interact-wi으로 만들었습니다). 그럼에도 불구하고

는 vstest.console.exe는 메시지와 함께 실패

Microsoft (R) Test Execution Command Line Tool Version 11.0.60315.1 
Copyright (c) Microsoft Corporation. All rights reserved. 

Starting test execution, please wait... 
Error: Failed to launch test executor for the Windows Store app with error code 0. 

나는 젠킨스 서비스 (또는 나에 의해 만들어진 서비스)를 사용하지 않고, 내 스크립트를 실행은 완벽하게 작동합니다. Windows 8 Phone 용으로 사용되는 프로젝트 테스트 스크립트는 완벽하게 작동하지만 Windows 8 Metro 응용 프로그램에는 사용되지 않습니다.

서비스에서 단위 테스트를 실행할 수있는 사람이 있습니까?

+0

가) 관리자 권한으로 명령 줄을 실행하고 있습니까? B) 개발자 라이센스가 설치되어 있고 최신 버전입니까? C)'/ InIsolation' 스위치로'vstest.console.exe'를 실행했는지 확인하십시오. [here] (http://blogs.msdn.com/b/vikramagrawal/archive/2012/05/) 06/running-unit-tests-for-windows-metro-style-apps-from-command-line.aspx)를 사용하십시오. –

+0

A) 관리자 권한으로 명령 줄을 실행합니다. B) 빌드 머신에 intalled이고 현재 빌드 머신에있는 의 개발자 라이센스가 있습니다. C)/InIsolation과 함께 vstest.console.exe를 실행합니다. Windows 저장소 프로젝트의 서비스에서 vstest.console.exe를 시작할 수 있습니까? –

+0

아직 시도 할 기회가 없었습니다. 내 친구 중 한 명은 TFS를 사용하여 지속적으로 통합했지만 일반적으로 수동으로 단위 테스트를 수행했습니다. 32 비트 vstest.console.exe와 64 비트를 모두 사용해 보셨습니까? –

답변

1

우리는 또한 MSBuild 작업을 시작하고 Windows Store App CI에 Jenkins를 사용합니다. 어쩌면이 스 니펫이 도움이 될까요?

<Target Name="UnitTest" DependsOnTargets="PreTest;Compile" Condition="'$(SkipTests)'=='' and '$(Platform)'=='x86'" > 
    <ItemGroup> 
     <TestAppx Include="$(SolutionDir)\**\*x86*\**\*Tests*.appx" /> 
     </ItemGroup> 

    <Message Importance="high" Text="Running tests for %(TestAppx.Identity)" /> 
      <Exec Command='"C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe" %(TestAppx.Identity) /InIsolation /platform:x86 /Logger:trx /UseVsixExtensions:true' 
        WorkingDirectory="$(SolutionDir)"/> 
</Target> 
+0

서버 요구 사항은 무엇인가? Win 8 서버 여야합니까, 아니면 Windows 2012 (R2) 일 수 있습니까? 우리는 Windows 2012 Server에서 Win Phone 8을 사용할 수 있는지도 알고 있습니다. –

관련 문제