thoughtbot Open Summit에서 커스텀 전략으로 factory_bot 확장하기

Extending factory_bot with custom strategies at thoughtbot Open Summit

작성자
jeff
발행일
2025년 10월 28일

핵심 요약

  • 1 factory_bot의 내부 동작을 이해하고 커스텀 전략을 구축하여 테스트 데이터 설정 방식을 맞춤화하는 방법을 학습합니다.
  • 2 기존 factory_bot 전략의 작동 원리를 파악하고, 라이브 코딩을 통해 팀의 고유한 요구사항에 맞는 전략을 직접 구현합니다.
  • 3 factory_bot 젬의 복잡성을 해소하고, 내부 구조를 탐색하며 테스트 스위트 최적화를 위한 심층적인 통찰력을 얻습니다.

도입

Rails 애플리케이션 테스트에 필수적인 factory_bot은 지난 20년간 수많은 테스트 스위트의 중추 역할을 해왔습니다. 그러나 그 인기에 비해 factory_bot이 내부적으로 어떻게 작동하며, 고유한 요구사항에 맞춰 어떻게 확장할 수 있는지 아는 개발자는 드뭅니다. thoughtbot Open Summit에서는 factory_bot에 익숙한 개발자들이 다음 단계로 나아가, 커스텀 전략을 구축하여 젬을 심층적으로 활용하는 방법을 배울 수 있는 실습 세션을 제공합니다.

대부분의 Rails 개발자는 factory_botcreate 또는 build 메서드에 익숙하지만, 이들은 더 큰 전략 시스템의 일부입니다. 전략은 레코드 생성 시 factory_bot이 데이터베이스 저장, 인스턴스화 등 어떤 방식으로 처리할지 지시합니다. 이 세션에서 Neil Carvalho와 José Blanco는 이 시스템을 확장하여 애플리케이션의 고유한 요구사항에 맞추는 방법을 시연합니다.

학습 내용

  • 기존 factory_bot 전략: 네 가지 기존 전략과 내부 작동 원리
  • 커스텀 전략 구축: 세션 중 라이브 코딩을 통한 맞춤형 전략 구현
  • 젬 코드 탐색: factory_bot 젬 코드 분석을 통한 디자인 패턴 이해
  • 커스텀 전략 활용: 테스트 스위트 간소화를 위한 적용 시점 및 이유이 세션은 factory_bot 사용에 능숙하며 젬 자체를 확장하고자 하는 개발자를 위한 1시간의 심화 과정입니다. 젬 내부 구조 개요와 함께 라이브 코딩이 진행되며, Neil과 José는 전략 패턴을 탐색하고 factory_bot이 팩토리 정의를 처리하는 방식을 설명한 후, 청중의 아이디어를 바탕으로 실시간으로 커스텀 전략을 구축할 예정입니다.

커스텀 전략의 이점

  • 도메인 로직 통합: 애플리케이션 도메인 로직과의 긴밀한 연동
  • 테스트 설정 간소화: 복잡한 테스트 설정의 효율적인 관리
  • 내부 구조 이해: Rails 핵심 젬의 내부 작동 방식 심층 분석

결론

이 워크숍의 목표는 `factory_bot` 젬의 복잡성을 쉽게 접근할 수 있도록 만들고, 젬에 기여하거나 확장하는 것이 생각만큼 어렵지 않다는 것을 보여주는 것입니다. 커스텀 전략은 유연성의 세계를 열어주며, 대규모의 복잡한 Rails 앱을 구축하거나 단순히 `factory_bot`의 작동 방식을 이해하고자 하는 모든 개발자에게 젬의 내부와 직접 작업할 수 있는 새로운 도구와 자신감을 제공할 것입니다. 2025년 10월 31일 thoughtbot Open Summit에서 이 세션에 참여하여 Rails의 가장 강력한 테스트 도구 중 하나에 대한 깊이 있는 이해를 얻기를 바랍니다.

댓글 0

로그인이 필요합니다

댓글을 작성하거나 대화에 참여하려면 로그인이 필요합니다.

로그인 하러 가기

아직 댓글이 없습니다

첫 번째 댓글을 작성해보세요!