서명없이 iOS 앱 빌드 및 단위 테스트 ~ AppCenter 편 ~

Visual Studio App Center란?



Microsoft가 제공하는 클라우드의 CI/CD 서비스입니다.
기본 기능은 무료로 사용할 수 있습니다.

(이하 "App Center"라고 함)

환경


  • Xcode:10.1 (10B61)
  • Swift: 4.2.1
  • Carthage: 0.31.2
  • CocoaPods: 1.6.0.beta.2

  • 준비



    스키마 컨테이너를 작업 공간으로 변경 (작업 공간을 사용할 때만)



    CocoaPods 등에서 *.xcworkspace를 사용하는 경우에만 필요한 설정입니다.

    Xcode 시작 > Product > Scheme > Manage Schemes…
    대상 Scheme의 Container를 Workspace로 변경


    CocoaPods 설치 스크립트 구현 (베타 버전의 CocoaPods 사용시에만 해당)



    App Center 환경은 기본적으로 최신 CocoaPods가 설치되어 있습니다.
    베타 버전의 CocoaPods를 사용하려면 스크립트를 수동으로 구현해야합니다.
    appcenter-post-clone.sh라는 이름으로 프로젝트의 루트 폴더에 배치하면 소스가 복제 된 직후에 자동으로 실행됩니다.

    appcenter-post-clone.sh
    #!/usr/bin/env bash
    
    # β版のCocoaPodsを使う
    # ∵Xcode 10×CocoaPods 1.5.3の組み合わせだとコード署名でビルドエラーが発生するため
    sudo gem install cocoapods --pre
    

    App Center에서 빌드 설정



    App Center에 로그인하여 프로젝트를 만듭니다.
    htps:// ms/

    프로젝트를 만들고 Git 저장소를 연결하는 방법에 대해서는 생략합니다.
    저는 Azure DevOps의 Repos에있는 Git 저장소와 함께 작동합니다.

    왼쪽 트리에서 "Build"를 선택
    대상 브랜치 선택


    빌드 설정



    나는 다음과 같이 설정하고 빌드 및 단위 테스트를 실행하고 있습니다.
    배포까지 할 경우에는 서명 등의 설정을 ON으로 하십시오.


    품목

    비고


    Project/Workspace
    {프로젝트 이름}.xcworkspace
    대상 프로젝트 or 작업 공간

    Shared Scheme
    {대상 스키마}
    선택할 수있는 스키마가 없으면 "No Scheme"오류가 발생합니다.

    Xcode 버전
    10.1
    대상 Xcode의 버전. Swift 버전과 끈

    빌드 스크립트
    Post-clone
    대상 스크립트. 제자리에 배치하면 여기에 표시됩니다.

    Build frequency
    Build this branch on every push
    푸시시 자동으로 빌드하는 경우 위, 수동은 아래를 선택합니다.

    Automatically increment build number
    OFF
    빌드 번호를 자동으로 증가시키거나

    Run XCTest tests
    ON
    XCTest를 실행하거나

    Environment variables
    OFF
    환경 변수를 사용합니까?

    Sign builds
    OFF
    서명하고 빌드하는가? UI 테스트를 실행하는 경우 필수

    Test on a real device
    OFF
    실제 기계로 시험을 실시하는가? 유료

    Distribute builds
    OFF
    앱을 배포하거나

    Build status badge
    ON
    빌드 상태 배지를 사용하거나


    결론



    이제 「소스를 푸시→빌드→단체 테스트」를 자동화할 수 있었습니다!
    그리고는 이것에 이어 "→배포"까지 자동화할 수 있도록 하고 싶습니다.

    App Center를 통한 빌드는 CocoaPods와 Carthage에서 관리하는 라이브러리를 자동으로 설치하므로 간단한 설정만으로 빌드할 수 있어 매우 편리합니다.

    참고 링크


  • Visual Studio App Center | Visual Studio - Visual Studio
  • 좋은 웹페이지 즐겨찾기