이 글의 원문은 여기서 확인하실 수 있습니다.
Android의 강점은 다양한 기기로 구성된 생태계입니다. 현재 전 세계 수십억 명의 사람이 24,000여 종의 각기 다른 기기로 Android를 이용하고 있습니다. Android 초기 버전이 출시된 이후 저희는 여러 기기에서 안정적이고 일관된 앱 환경을 제공할 수 있도록 Android 호환성 프로그램에 꾸준히 투자해왔습니다.
이 프로그램의 핵심은 호환성 테스트 모음(CTS)입니다. CTS란 개발자 앱을 다양한 기기에 맞게 최적화하고 사용자에게 일관된 앱 경험을 보장하기 위해 Android 기기 구현을 검사하는 2백만 건 이상의 테스트 사례를 모은 것입니다.
기기 제조업체는 개발 프로세스 내내 기기에서 CTS를 실행하고 이를 사용해 버그를 조기에 찾아내고 수정합니다. 해를 거듭하면서 CTS에 새로운 테스트 사례를 꾸준히 추가하여 현재 포함된 테스트는 2백만 건이 넘으며, 이는 Android가 발전하면서 새롭게 화두가 된 영역과 격차로 인해 추가 테스트를 필요로 하는 영역을 포함해 앞으로 더욱 확대될 예정입니다.
CTS 테스트는 대부분 Android 엔지니어가 작성합니다. 하지만 실제 기기 호환성 문제에 대한 앱 개발자들만의 독창적인 관점과 의견이 필요하다고 판단하여, 개발자 여러분이 만들고 실행하는 새로운 테스트 모음인 CTS-D를 출시했습니다.
CTS-D란 무엇일까요?
CTS-D는 앱 개발자가 현장에서 겪는 고충에 초점을 맞춘 개발자 주도형 CTS 모듈입니다. 개발자는 이와 같은 문제를 포착하는 데 도움이 되는 테스트 사례를 만들어 CTS-D에 기여하고 CTS-D 모음을 실행하여 호환성을 확인할 수 있습니다. 더 장기적으로는, Android 개발자 커뮤니티와 긴밀히 협력하여 CTS-D 모음을 확장할 계획입니다.
개발자 여러분이 다양한 기기에서의 호환성을 확인하기 위해 만든 자체 테스트를 AOSP로 가져오고 싶다면, 초기 CTS-D 커밋에서 커뮤니티가 기여한 최초의 테스트를 확인하시기 바랍니다.
CTS-D를 사용하면 이러한 테스트를 광범위하게 공유하고, 기기 제조업체와 앱 개발자가 문제를 더욱 효과적으로 식별하고 공유할 수 있습니다.
CTS-D는 어떻게 사용할까요?
CTS-D는 오픈 소스로 제공되며 AOSP에서 사용할 수 있으므로, 모든 앱 개발자가 이를 확인 도구로 사용할 수 있습니다. CTS-D를 사용하면 앱 개발자, 기기 제조업체, Google 사이의 통신 오버헤드를 최소화하여 문제를 효과적으로 해결하는 데 도움이 됩니다.
특정 기기가 CTS-D 테스트를 통과하지 못할 경우, Issue Tracker에 신고해 주시기 바랍니다. 신고된 기기에서 문제를 확인한 후 파트너와 협력해 문제를 해결해 드리겠습니다. 또한 기기 제조업체에 CTS-D를 사용해 문제를 발견하고 완화하는 조치를 취하도록 강력히 권고하겠습니다.
CTS-D 시작하기
CTS-D에 대한 아이디어가 있는 분들은 AOSP에 테스트 코드를 제공하기 전, Issue Tracker에 테스트 제안서를 제출해 주시기 바랍니다. Android 팀에서 제안서를 검토하고 테스트의 적격성을 확인해 드리겠습니다. 현재 저희가 가장 중점을 두고 있는 부분은 전원 관리 영역에서 더 많은 테스트 사례를 추가하는 것입니다.
CTS와 마찬가지로, 새로운 CTS-D 테스트 사례는 자격 요건을 충족해야 하며 다음 사항만 적용할 수 있습니다.
- Android 개발자 문서에 설명된 모든 공개 API 동작.
- Android CDD(호환성 정의 문서)에 포함된 모든 필수(MUST) 요구 사항.
- AOSP의 기존 CTS 테스트 사례에서 다루지 않은 테스트 사례.
CTS-D에 대해 자세히 알아보고 싶은 분들은 여기에서 CTS-D에 기여하고 이를 활용하는 방법에 대한 가이드를 확인해 보시기 바랍니다. 새로운 CTS-D 테스트 사례에 대한 검토 프로세스는 시간이 걸릴 수 있으니, 미리 양해 부탁드립니다. 새로운 CTS-D를 통해 훨씬 더 나은 Android 경험을 함께 만들어 나가길 바랍니다.