티스토리 뷰

공부

Fastlane (3) - Screenshots

Zedd0202 2019. 11. 7. 13:09
반응형

안녕하세요 :) Zedd입니다.

오늘은~~fastlane을 이용해 스크린샷을 찍는 법을 공부해볼게요!!

갑자기 왠 스크린샷?이라고 생각하실 수 있는데,

앱스토어에 앱을 올리려면 앱의 스크린샷이 꼭!! 필요하답니다.

 

사실 저같은 경우에는, 처음으로..! 개인 앱을 앱스토어에 올릴 때, 이 스크린샷에 고생을 했었어요.

뭐 사이즈도 안맞다는다 이러고..ㅎㅎ;; 좀 헤맷던 기억이 있네요.

 

아무튼 fastlane을 사용하면 이 스크린샷 프로세스를 자동화하여 빠르고 일관된 결과를 얻을 수 있다고 해요~~

그럼 시작해봅시다!

그 전에 fastlane글들을 읽고오시면 좀 도움이 될지도 ~.~

 

https://zeddios.tistory.com/837

 

Fastlane (1) - Setup 및 Test

안녕하세요 :) Zedd입니다. 오늘은!!!!! 저도 드디어..!!!!!!!!!! 드디어!!!!!! Fastlane을 공부해보려고 합니다ㅎㅎㅎㅎ 혹시 Fastlane이란걸 들어보셨나요? 저는 엄청 많이 들어보긴 했는데 한번도 써보진 않은...

zeddios.tistory.com

https://zeddios.tistory.com/839

 

Fastlane (2) - Test결과를 Slack으로 보내기

안녕하세요 :) Zedd입니다. https://zeddios.tistory.com/837 Fastlane (1) - Setup 및 Test 안녕하세요 :) Zedd입니다. 오늘은!!!!! 저도 드디어..!!!!!!!!!! 드디어!!!!!! Fastlane을 공부해보려고 합니다ㅎㅎㅎ..

zeddios.tistory.com

 

 

Fastlane(3) - Screenshots


 

그럼..일단 스크린샷을..찍기전에, 제 앱을..조금 수정해볼게요 :D

 

스크린샷 찍을 화면은 좀 있어야 할거 아냐...

암튼 이렇게 만들어줬씁니다.

첫번째, 두번째 Viewcontroller의 button을 누르면 다음 Viewcontroller로 가도록 해주었씁니다.

 

그럼 이제 진짜 해봅시다!

..........그렇군..해봅시다...

fastlane정말 쉬운거 맞니?..자꾸 의문이....

 

차근차근 해봅시다!!

 

1. Create a new UI Test target in your Xcode project (See the top part of this article)

 

Xcode 프로젝트에 UI Test Target을 만들래요!

 

 

저는 저번에 만들었다는 사실...

만드는 방법은 

 

저기서 + 버튼을 누르고

 

UI Testing Bundle을 눌러 추가해줍니다.

 

자 암튼 1단계 끝@@

 

2. Run fastlane snapshot init in your project folder

 

프로젝트 폴더에 가서 fastlane snapshot init을 하래요?

 

해봅시다.

띠용

여기서도 단계가 나오ㅡㄴ데

fastlane독스에서 나오는 단계랑 중복되니까 계속 해볼게요.

 

3. Add the ./fastlane/SnapshotHelper.swift to your UI Test target 

You can move the file anywhere you want

 

자 fastlane/SnapshotHelper.swift를 우리의 UI Test Target에 추가해라~~ 뭐 그런말 같아요? 해봅시다

 

fastlane init을 해서 생겼던 fastlane디렉토리에 들어가보면

SnapshotHelper.swift파일이 있죠? 이걸 우리의 UI Test Target으로 옮겨줘볼게요. 

 

 

뭐 이렇게 넣어줄게요? 그 다음 단계로 넘어가봅시다. 

 

4. Call `setupSnapshot(app)` when launching your app

 

하고 밑에 코드들이 있죠? 복사해서

우리가 만든 UI Test Target에 ~~UITests클래스 안의 setup()에 넣어줍니다. 그다음에!

 

5. Add 'sanpshot("0Launch")' to wherever you want to trigger screenshots

 

내가 스크린샷을 찍고 싶은 곳에 sanpshot("0Launch")이런걸 하라는것 가틍ㄴ데....어디서해?

 

ㅇ ㅏ~~

 

얘도 테스트클래스였지..테스트 메소드에 넣어주면 되나봅니다.

이름을 좀 바꿔볼게요. 

 

제 ViewController들인데요..음..첫번째 ViewController를 찍으면 되는건가..?

저도 지금 어케하는지 잘 모르겠어서;;;

 

 

뭐 이런식으로 해줍시다. 아니 근데 이런거야? 이렇게 하는거 아닌거같은데..아무튼 다음 단계로 가줍니다.

 

6. Add a new Xcode scheme for the newly created UITest target

 

Xcode scheme을 추가하라네요?

자 New Scheme누르면

이런 프롬프트가 뜰텐데요.

여기서 Target을

 

UITests꺼로 변경해줍니다 꼭!!!!! 아 진짜 제가 그냥 Target에 했다가 계속 안돼서.....글 계:속 길어지다가 드디어 발견... 

암튼 꼭 Target을 UI Test꺼로 변경해주세요. 그리고 뭐 이름 알아서 짓고 추가 ㄱ

 

7.  Add a Check to enable the `Shared` box of the newly created scheme

 

빨간박스에 Shared체크 해라..입니다! 이미 저는 체크 되어있군요

그럼 끝난건가?

 

그럼 대망의...

fastlane snapshot    

을 치기전에!!!!!!!!!!!!!

 

fastlane snapshot init했을 때 SnapshotHelper.swift와 함께 생성된

Snapfile

들어가볼게요.

뭐 이런 것들이 있는데.. 딱 보면 devices는 내가 찍을(?) 그러니까 스크린샷을 찍을 디바이스 같고

languages는 언어설정 같네요. 

 

지금 devices랑 languages전부 주석처리 되어있는데..

암튼 하나씩만 풀어줄게요.

 

languages는 한국..하고싶은데...한국 코드 뭐지...

https://www.ibabbleon.com/iOS-Language-Codes-ISO-639.html

 

iOS Supported Language Codes (ISO-639) | Babble-on

iOS Supported Language Codes (ISO-639) How do you name that .xliff or .lproj folder with your localization files? Looking for Google Play Store language codes? Tweet Revised: June 2019 iOS can be localized into 100 languages and regions, but only 31 langua

www.ibabbleon.com

ㅇㅋ

자 그럼 이렇게 하고 저장해주고.. 

 

스킴과 스크린샷이 저장될 디렉토리도 주석 풀어줄게요. 저 스킴에는 아까 새로 만들어준 그 스킴 이름 입력하면됨

 

이제 진짜 돌려보겠삼

fastlane snapshot    

 

 

오옹 

어쩌구 저쩌구 하더니 성공

그러고 갑자기 사파리 탭 하나가 뜨더니

ㅇ0ㅇ....!!!

대박이군..

여기에 스크린샷 ㅈㅓ장해줘!! 라고 지정했어서..생겼네요. 들어가봅시다. 지정안해주면 fastlane디렉토리 안에 생기는듯

언어별로 폴더가 만들어지고 그 안에 스크린샷이 만들어지나봐요.

오 대단하군..

 

https://academy.realm.io/kr/posts/automate-ios-screenshots-with-fastlane-snapshot/

 

FastLane Snapshot으로 배포용 스크린샷 자동으로 만들기 - iOS Tech Talk

iOS 앱 배포를 위한 스크린샷을 기기, 언어 등 설정 별로 자동으로 찍어주는 fastlane의 snapshot을 설명해 드립니다.

academy.realm.io

여기를 보니까

아 이런식으로.......그럼 저도 해보겠슴니다.

 

이런거구나..음 그러니까 일단 app을 정의해주고,

 

 

여기서 ㅇㅣ 버튼을 눌러야 다음 ViewController로 가잖아요? 암튼 찍을 ViewController로 이동을 해야할거 아님??

이 버튼을 찾아서 tab해주는 작업을 한겁니다.

첫번째 파라미터의 타입이 뭐 ElementType인데. 정말 다 이씅ㅁ...

 

 

엄청 많아요!!!

 

버튼두 엄청 많다. 암튼 전 걍 버튼이니까...버튼으로 지정해주고,

identifier를 넣어줘야하는데 

 

여기에 넣어주면 되는 것 같아요!!

암튼 이렇게 button을 찾으면

 

tap을 해야 다음으로 넘어가니까..명시적으로 tab을 불렀죠? 

암튼 이렇게 하시면 됩니다!!!

 

이렇게 하구

fastlane snapshot    

고고

그러면..!!

이렇게 스크린샷들이 생겼습니다!!!!

개꿀이자나.....!!!!!!!!!!

 

ㅎㅎㅎㅎㅎㅎㅎㅎㅎㅎㅎㅎㅎㅎ

아무튼 삽질은 좀 있었지만....이렇게 스크린샷을 잘 찍어내니까 기분이 좋네요 XD

 

그럼 오늘 fastlane공부는 여기서 끝!!

 

 

 

반응형

'공부' 카테고리의 다른 글

SonarQube 삽질기  (2) 2019.12.04
Fastlane (4) - Upload Screenshots to the App Store  (0) 2019.11.08
Fastlane 재설치  (2) 2019.11.06
Fastlane (2) - Test결과를 Slack으로 보내기  (0) 2019.11.02
Fastlane (1) - Setup 및 Test  (2) 2019.11.01