스
스포카
May 24, 20221회
테스트 자동화 구축 이야기

간단 소개
스포카 QA팀의 Appium을 활용한 모바일 앱 테스트 자동화 구축 과정과 향후 계획, 그리고 테스트 자동화의 효과적인 활용 방안에 대한 이야기.
AI Summary
- 테스트 자동화 도입 배경 및 고려 사항
- 테스트 자동화는 테스트 커버리지 확대, 일관성 및 신뢰성 확보, 비용 절감 등의 이점을 제공하지만, 제한적인 검증 케이스와 유지보수 비용 증가의 단점도 존재한다.
- 테스트 자동화는 테스트 엔지니어가 더 다양한 테스트를 수행할 수 있도록 돕는 보조적인 역할을 수행하며, 리그레션 테스트에 효과적으로 활용될 수 있다.
- Appium을 활용한 테스트 자동화 구축 과정
- 스포카는 리그레션 테스트를 중심으로 Appium을 사용하여 모바일 앱 테스트 자동화를 구축했다.
- Android와 iOS를 모두 지원하고, 오픈소스이며, 다양한 언어 지원 및 다른 도구와의 통합 가능성을 고려하여 Appium을 선택했다.
- Appium Inspector를 활용하여 앱 화면의 Element를 식별하고 테스트 스크립트 개발에 활용하며, 테스트 케이스 정제 과정을 거쳐 자동화에 적합한 케이스를 선정했다.
- 향후 계획 및 결론
- Python을 사용하여 테스트 스크립트를 개발하고, HtmlTestRunner를 통해 테스트 결과를 Html 형태로 추출한다.
- 현재 Android App 테스트 케이스의 약 10% 커버리지를 확보했으며, 2022년 3분기까지 Android/iOS App 각각 30% 커버리지 확보를 목표로 한다.
- 테스트 자동화는 만능이 아니며, 명확한 목적과 전략을 가지고 활용해야 효과적이다.
Next Feeds
사람인 Android App Refactoring
사람인 아이엠그라운드 앱의 MVC 패턴 문제점을 개선하고자 MVVM 패턴, AAC, Dagger-Hilt, DataBinding 등을 적용하여 리팩토링을 진행한 사례 공유.
MVVMAACDagger-HiltDataBindingViewBinding
2022. 5. 23.
사람인
React 18: 리액트 서버 컴포넌트 준비하기
React 18의 주요 기능인 서버 컴포넌트(RSC)의 특징, 이점, 그리고 서버 사이드 렌더링(SSR)과의 관계를 설명합니다.
React 18서버 컴포넌트데이터 페칭SSR번들 사이즈
2022. 5. 20.
카카오페이
자바스크립트 v8 엔진의 가비지 컬렉션 동작 방식
자바스크립트 v8 엔진의 가비지 컬렉션 동작 방식을 분석하고, 메모리 관리 및 최적화 기법을 설명합니다.
가비지 컬렉션v8 엔진메모리 관리Mark & SweepOrinoco
2022. 5. 19.
카카오엔터테인먼트FE
자바스크립트 v8 엔진의 가비지 컬렉션 동작 방식
자바스크립트 v8 엔진의 가비지 컬렉션 동작 방식을 분석하고, 메모리 관리 전략과 최적화 기법을 설명합니다.
v8 엔진가비지 컬렉션메모리 관리Mark-SweepOrinoco
2022. 5. 19.
카카오엔터테인먼트FE
Sentry로 우아하게 프론트엔드 에러 추적하기
Sentry를 활용한 프론트엔드 에러 추적 방법과 카카오페이 개발팀의 도입 사례를 소개합니다. 효과적인 에러 관리 및 분석 전략을 제시합니다.
Sentry프론트엔드에러 추적모니터링React
2022. 5. 18.
카카오페이
Test Code Why? What? How?
Test Code의 중요성을 강조하고, 효과적인 Test Case 설계 및 Testable Code 구현 방법을 제시하여 애플리케이션의 안정성을 확보하는 방법을 설명합니다.
Test CodeUnit TestTestable Code인터페이스명세
2022. 5. 17.
카카오엔터테인먼트FE