티스토리 뷰

반응형

 

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

 

https://zeddios.tistory.com/837

 

Fastlane (1) - Setup 및 Test

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

zeddios.tistory.com

이걸 공부했는데요, 기승전 Github Actions로 끝내긴 했지만...그래도...ㅎㅎ..

말 그대로 오늘은 Test결과를 Slack으로 보내보겠습니다..!!

 

일단 독스에 의하면...

slack webhook url만 넣으면 받을 수 있다구?!?!?!?라고 하는것 같네요. 해봅시다.

 

 https://my.slack.com/services/new/incoming-webhook/

 

Sign in | Slack

 

slack.com

 

를 가준뒤, 워크스페이스(?)라고 하는거 맞죠, 암튼 그거 선택해주고, 웹훅을 받을 채널을 선택해주면 됩니다. 

 

저는 제 개인 채널?에 설정해줘볼게요. Add incoming WebHooks intergration을 누르면,

 

 

웹훅 URL이 생성된 것을 볼 수 있습니다!!

암튼 얘를 복사해주고

 

얘를 fastfile에 넣어줍시다.

저는 어떤 이유에서인지 run_tests가 먹지 않으므로, run_tests의 alias인 scan을 사용해줄게요. 

 

lane :tests do
  scan(scheme: "FastlaneTest",
       slack_url: "아까 복사한 웹훅 URL")
end

 

slack_channel은 뺐습니다. 근데 왜있는거지?....

웹훅 URL이 해당 채널에서 만들어지는거 아냐?..이부분은 잘 모르겠어서 일단 빼줍니다.

그리고 fastlane tests 커맨드를 터미널에 넣어줍니다. (lane이름이 tests니까)

 

아나 ㅋ...저번글에서 테스트 일부러 실패하게 해놓은거 깜빡하고 안뺌

암튼 이렇게 테스트가 끝나면...!

 

ㅋㅋ

ㅋㅋ

ㅋㅋ

ㅋㅋㅋ

ㅋㅋㅋ

ㅋㅋ

ㅋㅋ

아니 제가 한번에 성공을......

이런일 흔치않은데...............

 

암튼 제가 한번에 성공할 정도니 개쉽다는 소리임..

그냥 슉슉하니까 다 됐죠..!!!!!

 

그럼 좀 더 fastlane + slack을 파헤쳐봅시다!

fastfile을 잘 살펴보면,

 

이렇게 before_all 이 있네요. 뭔가...뭔가를 하기전에 하는 것 같죠

그리고 아래로 내리면

 

after_all이 있습니다.

lane이 성공적으로 끝났을때만 실행한다는 것 같아요.

그리고 그 밑에!!

 

error 도 있네요.

뭔가 에러를 받으면 실행되는 것 같아요?

 

지금 error에 

slack부분에 slack_url이 없는 것을 보아..(하지만 분명 따로 넣어 줄 순 있겠죠!!!!!) 

뭔가 따로 넣어주지 않으면

 

before_all에서 지정해준 slack_url로 보내 줄 것 같은 느낌적인 느낌.......

마침 우리가 지금 test fail이 나는 상황이니까 해봅시다!!!

 

before_all do
    ENV["SLACK_URL"] = "Slack webhook URL"
 end

 

before_all에 아까 저의 webhook url을 복사해주고,

 

lane :tests do
  scan(scheme: "FastlaneTest",
       slack_url: "아까 복사한 webhook URL")
end

우리 아까 이렇게 했었잖아요? 근데 지금 slack 메세지를 error에서 보내줄거라서

lane :tests do
  scan
end

그냥 이렇게만 해줍시다.

 

그리고 fastlane tests를 실행해볼게요.

 

테스트가 실패했고, 역시나 예상대로..!!

이렇게 slack 메세지가 오네요.  어제꺼는

이렇게만 왔는데, 이번꺼는 어느 Lane인지, result는 뭔지까지 왔네요!, 그리고 

 

error에 보면 exception.message를 message로 넣어줬는ㄷㅔ,

Tests have failed가 메세지겠죠..!? 

 

아무튼 slack메세지 저는 너무 단촐(?)하게 보냈는데

이렇게나 많은 파라미터를 줄 수 있답니다. XD

그럼, after_all도 해봅시다. 

 

지금은 이 after_all이 불리지 않죠! 왜냐하면 테스트가 실패했으니깐...

그럼 테스트 실패케이스를 성공으로 바꾸고 다시 해보도록 하죠.

 

일단 이렇게 하고..

다시 fastlane tests를 돌려줍시다.

 

그러면

 

예에ㅔ~~~

아 저 왼쪽에 초록색 bar도 성공, 실패에 따라 색깔이 달라지는거구나..

실패하면 빨간색..!!

 

ㅎㅎㅎㅎㅎ재밌네요. :)

 

근데 제가 지금 lane이 하나라..before_all이 의미가 있는건지 잘 모르겠네요.

before_each도 있던데..

여러 lane을 한꺼번에 어떻게 트리거시키지..?

fastlane (lane이름) 이자나요? 

그럼 lane하나 놓고 그 lane정의(?)부분에서 다른 lane들을 호출하는 그런 형식인건가

 

아 그렇것 같네요..!!!!!!! 글쿤..

아무튼 오늘은 테스트결과를 Slack으로 보내는 그런걸 해봤는데

꼭 테스트가 아니고 뭐든지 어떤 행동에 대한 결과나 그런것들을 Slack과 연동시킬 수 있겠죠?

 

이 글이 도움이 되었길 바랍니다 :)

 

다음 글 읽으러 가기 ~.~

https://zeddios.tistory.com/840

 

Fastlane (3) - Screenshots

안녕하세요 :) Zedd입니다. 오늘은~~fastlane을 이용해 스크린샷을 찍는 법을 공부해볼게요!! 갑자기 왠 스크린샷?이라고 생각하실 수 있는데, 앱스토어에 앱을 올리려면 앱의 스크린샷이 꼭!! 필요하답니다. 사..

zeddios.tistory.com

 

 

반응형

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

Fastlane (3) - Screenshots  (0) 2019.11.07
Fastlane 재설치  (2) 2019.11.06
Fastlane (1) - Setup 및 Test  (2) 2019.11.01
Github Actions 시작해보기  (0) 2019.10.06
iOS ) UITextField 삽질  (0) 2019.09.24