Device Farm에 관하여

정태경·2022년 2월 26일
2

Device Farm 구축

목록 보기
1/3
post-thumbnail

개요

사무실에서 모두 함께 근무하던 시절에는 고려하지 않아도 되는 다양한 일들이 재택근무 시에는 꽤나 큰 불편함으로 다가오는 경우가 있다. 내가 겪은 한 가지 불편한 점은 바로 장비 관리이다. 재택근무가 보편화된 상황에서 장비 관리란 여간 번거로운 일이 아니다.

만약 특정 기기 A에서만 재현이 되는 크리티컬한 이슈가 있다고 가정해 보자. 개발팀은 이 이슈를 디버깅하기 위해서 반드시 A라는 장비를 손에 거머쥐고 있어야 한다. 사무실에 함께 근무하고 있다면 서로 장비를 주고받을 수 있지만 한 명이라도 재택근무 중이라면 이야기는 달라진다.

나는 이러한 불편함을 해소하고자 Device Farm을 직접 구축해 보기로 했다.

Device Farm이란?

Device Farm 이란 Android와 iOS를 테스트할 수 있도록 클라우드를 통해 다수의 단말기를 제공하고 각 단말기에 앱을 설치하거나 화면을 제어할 수 있는 도구를 제공하는 서비스이다. 즉, 다시 말해 클라우드를 통해 원격으로 실물 기기를 컨트롤할 수 있게 해주는 서비스이다. (이해를 돕기 위해 매우 간단한 이미지를 만들어 보았다)

Device Farm을 도입하면 뭐가 좋은데?

Device Farm을 구축해놓으면 단말기를 대여하거나 가지고 다닐 필요 없이 원격지에서 실물 단말기로 테스트하거나 디버깅이 가능해지는 것이다. 매번 대여/반납 장부를 작성할 일도 없어질 테고..

어떻게 구축하는 것이 좋을까?

대표적으로 Device Farm 서비스를 제공하는 곳이 있는데 바로 AWS이다. AWS에서는 Device Farm과 자동화 테스트를 완벽히 지원하고 있다. 다만, 역시나 유료이다. 원격 단말기를 사용한 시간에 따라 과금이 되는 형태라 다소 부담스러웠다.

과금이 부담스러워 오픈소스를 리서치해 보니 유일하게 제공되는 오픈소스가 하나 있었다. openSTF라는 녀석인데 이 녀석을 활용하여 Device Farm을 구축해 보기로 했다.

https://aws.amazon.com/ko/device-farm/
https://github.com/openstf/stf

profile
現 두나무 업비트 QA 엔지니어, 前 마이리얼트립 TQA 엔지니어

1개의 댓글

comment-user-thumbnail
2023년 12월 11일

openSTF 실무 적용 후기가 궁금하네요. 좋은 내용 잘 읽었습니다.

답글 달기