HOME > etc > tips

Canary test(카나리아 테스트)라고 부르는 이유는 무엇인가요?

By JS|11 Apr 2019

어떤 개발툴을 다운받으려 할 때 Canary라고 부르는 것들이 있습니다. 예를들어, 구글에서는 "가볍게 테스트된 빌드의 최신 기능을 이용하세요"라면서 Android Studio Canary 버전을 공개하였습니다. 또, MS에서는 Chromium Edge browser를 공개하면서 카나리(Canary) 버전을 릴리즈했습니다. 여러 회사에서 사용하는 것을 보고 카나리는 특정 회사에서 쓰는 것이 아니고, 테스트 버전을 의미한다는 것을 알았습니다. 그럼 카나리아는 정확히 무엇을 말하는 것일까요? 저 용어는 어디서 온 것일까요?

카나리는 무엇인가?

Canary development, test라는 용어가 있습니다. 안정적인 버전을 릴리즈하기 전에 테스트버전을 일부 사용자에게 배포하는 것을 말합니다. 만약 카나리 버전에 심각한 버그가 발생된다고 해도 사용하는 사용자가 적기 때문에 피해를 최소화할 수 있습니다. 또한 안정적인 버전과 테스트 버전이 모두 배포된 상태이기 때문에 A/B 테스트가 가능합니다.

카나리(Canary)의 기원

Canary의 사전적 의미는 카나리아라는 새 입니다. 카나리아는 석탄 광산에서 유독가스 누출의 위험을 알리는 용도로 사용되었습니다. 탄광에서 유독가스가 많이 발생하면 사람이 죽을 수 있는데요, 카나리아가 사람보다 먼저 죽기 때문에, 이것으로 유독가스 누출의 지표로 사용할 수 있었습니다. 위처럼 일부에게 배포하는 개발방법에 카나리아 라는 새의 이름을 붙였습니다. 심각한 버그가 발생했을 때, 매우 적은 소수의 사용자만 피해를 보는 것이 카나리아가 탄광에서 광부들에게 위험을 알리는 것과 비슷했기 때문입니다.

canary testing