커뮤니티 하이라이트: Ramona Schwering

라모나 슈베르링은 품질 보증 관련 경험이 있는 소프트웨어 엔지니어이자 Google 개발자 전문가입니다.

이 게시물은 테스트 자동화 블로그 시리즈의 일부인 커뮤니티 전문가를 중점적으로 다룹니다.

Ramona Schwering입니다.

라모나 슈베르링은 품질 보증 경력이 있는 소프트웨어 엔지니어입니다. 웹 기술 분야의 Google Developer Expert이기도 합니다. 라모나는 테스트 자동화에 관심이 많습니다. 콘퍼런스 연설, 기사 게시, 오픈소스 프로젝트 참여, 모임 조직 등 공공 교육 활동을 통해 테스트 자동화에 크게 기여했습니다.

VueJS Amsterdam에서 근무 중인 Ramona Schwering입니다.

제슬린: 웹 개발과 테스트로 들어가게 된 경로는 무엇이었나요?

라모나: 예술에 대한 저의 사랑은 발달을 향한 여정에서 시작되었습니다. 저는 고등학교 때 게시하려고 했던 그림을 그리고 그렸을 때 많은 시간을 보냈습니다. DeviantArt와 Animexx가 아닌 다른 제품을 사용하기 위해 웹사이트를 직접 만들었습니다. 이 과정을 통해 웹 개발에 대해 알게 되었습니다. 나중에 첫 직장에서 테스트 자동화에 대한 열정을 키웠습니다. 인간의 창의성과 경험이 필요한 작업에 집중할 수 있도록 일상적인 테스트 작업을 없애고 싶었습니다.

제슬린: 테스트 자동화 도구가 정말 많아요. 어떻게 하면 모든 것을 배우거나 어떤 것을 선택해야 할지 알 수 있을까요?

라모나: 아주 좋은 질문입니다. 가장 중요한 일부터 먼저 해야 합니다. 많은 자동화 프레임워크를 시험해 보는 것은 분명 좋지만, 모든 자동화 프레임워크를 하나하나 배워야 한다는 부담을 느끼지 않아도 됩니다. 소규모 프로젝트를 빌드하거나 첫 번째 소규모 테스트를 작성하여 프레임워크의 경험과 특이한 점이 마음에 드는지 확인해 보세요. 요구사항과 마음에 드는 한두 가지를 결정해도 됩니다. 특정 프레임워크의 개발자 환경이 마음에 드는지 테스트하면서 선택하는 게 낫습니다. 사용하기에 완벽한 느낌인지 확인하려고 노력합니다. 테스트는 헤드스페이스를 요구하지 않는 습관처럼 느껴져야 합니다. 물론 빌드하는 프로젝트와 그 요구사항에 따라 다릅니다.

제슬린: "아직 시간이 없어요."와 같이 테스트가 끝날 때까지 검사가 지연되는 경우가 많습니다. 이에 대해 어떻게 생각하시나요?

라모나: 테스트를 작성하는 데는 시간이 오래 걸리고, 특히 Test-Driven-Development를 사용하는 경우에는 더 오래 걸립니다. 하지만 테스트가 많은 시간을 소모한다는 것이 일반적인 오해입니다. 테스트가 많은 이점을 제공하는 투자라고 생각합니다. 초기 피드백을 받을 수 있으므로 버그를 조기에 수정할 수 있으므로 버그가 누적되지 않고 이후 단계에서 수정하는 데 더 많은 비용이 들지 않기 때문에 버그 수정 비용이 낮아집니다. 그 외에도 자동화가 많을수록 수동으로 테스트할 필요가 줄어들지만 여전히 프로젝트 상태에 대한 유용한 개요를 확인할 수 있습니다. 따라서 제 생각에는 오히려 정반대입니다. 테스트를 통해 꾸준한 노력 없이도 시간을 절약하고 확신을 얻을 수 있습니다.

제슬린: 귀사의 테스트 자동화 문화에 대해 말씀해 주세요.

라모나: 현재 저희 팀에서는 테스트가 공동의 책임으로 여겨집니다. 즉, 모두가 테스트를 책임져야 합니다. Google은 Atlassian에서 처음 도입한 'Quality at Speed'라는 프로세스를 구현했습니다. 이 프로세스를 통해 테스터가 안전망 역할만 하고 pull 요청에 테스트가 필요한지 여부를 결정합니다. 따라서 개발자는 테스터가 모든 것을 처리한다는 아이디어에 의존할 수 없습니다. 대신 개발자와 테스터가 품질 엔지니어의 도움을 받아 코치 역할을 하고 개발자에게 테스트 방법을 가르쳐 줍니다. 개발자는 변경사항에 필요한 테스트를 작성하고 품질 엔지니어가 필요하다고 판단하면 나중에 해당 테스트를 보완합니다. 이러한 접근 방식은 개발자와 품질 엔지니어 간의 공감대를 높이고 책임을 공유하는 동시에 협업할 수 있도록 했습니다.

제슬린: 말하기, 쓰기, 오픈소스 참여 등 다양한 커뮤니티 활동에 참여하고 계십니다. 어떻게 시간을 정하고 균형을 잡을 수 있을까요?

라모나: 제 회사가 대중 연설 활동을 할 수 있어서 다행이라고 생각해요. 그렇기 때문에 회의에 참석하거나 강연 콘텐츠를 준비할 때 퇴근할 필요가 없죠. 하지만 공적 학습에 여전히 여유 시간을 어느 정도 사용하고 있다는 점을 인정해야 합니다. 시간을 효과적으로 관리하기 위해 매일 2시간을 할애하는 타임 박스 전략을 채택했습니다. 예를 들어 오픈소스 프로젝트에 참여하거나, 기사를 작성하거나, 프레젠테이션 리허설을 하는 등의 활동에 할애할 수 있습니다. 이 두 시간 후에는 충분한 여가 시간을 확보하기 위해 휴식을 취하는 것이 중요합니다. 이 접근 방식이 계획대로 효과가 없을 때도 있지만, 일반적으로 중요한 작업을 무시하지 않고 업무와 커뮤니티 참여, 개인 생활 사이의 균형을 잘 잡는 데 도움이 되었습니다.

제슬린: 테스트 자동화를 시작하기 전에 듣고 싶었던 조언이 있으신가요?

라모나: 특정 솔루션 프레임워크에 너무 편중하지 말고 당면한 문제를 해결하는 것보다 이를 우선시하는 것이 중요합니다. Google의 궁극적인 목표는 사용자에게 최상의 품질과 사용자 환경을 제공하는 것이며, 어떤 프레임워크든지 이를 달성하는 데 도움이 될 수 있습니다. 따라서 프레임워크 전쟁은 하지 않는 것이 가장 좋습니다. 테스트 경력을 시작한 지 얼마 되지 않았다면 먼저 테스트 및 테스트 자동화의 기본사항을 배우고 필요한 경우에만 프레임워크를 도구로 사용하는 것이 좋습니다.

Jecelyn: 테스트 자동화와 웹 개발을 따라잡으려면 어떻게 해야 할까요?

라모나: 뉴스 매체와 소셜 미디어를 모니터링하여 최신 트렌드와 혁신적인 아이디어를 확인하는 것을 좋아합니다. 하지만 관련 정보를 필터링하는 것은 어려울 수 있으므로 신뢰할 수 있는 출처와 개인을 파악하도록 하겠습니다. 또한 Twitter 목록 및 북마크와 같은 기능을 사용하여 소스를 통합합니다. 제가 팔로우한 출처 목록 중 하나입니다. 회의와 모임에 참석해도 대화에서 배우고 다른 참석자들과 대화를 나눌 수 있기 때문에 정보를 얻는 또 다른 방법입니다.