개발자
안녕하세요! 프론트엔드 테스트코드를 작성하면 QA 비용을 줄일수있을지 궁금합니다! 저희 회사는 QA팀이 별도로있지않고 다른팀에서 QA를 해주고계십니다. QA를 넘기기전에 철저한 테스트를 진행하려면 개발일정외에 테스트를위한 일정을 할당받아야하는데 매번 최소한으로 받거나 건너뛰는일이 많아서 빠른시간안에 확인해야하다보니 기존 모든기능들을 확인할수없다거나 꼼꼼함을 최우선으로 생각하고 테스트해도 확인해야하는 기능의 범위가 넓어지면 누락되는 부분들이 생깁니다. QA단계에서 발견되는 이슈들이 많아지면 일정도 늘어나게되고 놓치는 이슈들은 고스란히 유저에게 영향이갑니다. 이렇다보니 개발을할때 개발자체보다 테스트에대한 부담이 더 커지고있습니다. 검색을 많이해보았으나 툴을 사용하는 방법이나 이론적인 글들이 많고 사례나 결과에대한 글을 찾기어렵더라구요. 결론적으로 프론트 테스트 작성 시 위와같은 부담과 리스크들을 줄일 수있는지 실제 현업에서 사용하고있는지, 효과가 있는지가 궁금합니다! 경험을 공유해주신다면 큰 도움이될거같습니다!
답변 2
인기 답변
테스트 코드는 확실히 QA 비용 감소에 효과가 있습니다. 테스트 코드가 버그 발생 확률을 확실히 줄여줍니다. 새 요구사항을 구현하다 보면, '원래 잘 작동하던 기능'이 테스트 케이스에서 실패해서 미리 버그를 잡은 적이 꽤 있었습니다. 이건 개발 단계 뿐만 아니라, QA 진행 중에도 겪게 되는 이점입니다. 이슈 해결을 위해 코드를 고치다가 여러 곳에서 쓰고 있는 유틸 함수나 커스텀 훅을 수정해야 하는 상황이 발생하곤 합니다. 이 때, 각 기능마다 테스트 코드가 잘 짜여져 있다면 추가적인 QA 이슈가 나오는 상황을 방지하는 효과가 생깁니다. QA 범위를 줄일 수 있는 효과도 있습니다. 현실적으로 봤을 때, 현업에서 QA 인력과 데드라인이 모든 테스트 케이스를 일정 안에 수행하기 어려운 상황이 많았습니다.저희는 QA 진행 전에 QA 담당자 분들과 테스트 범위에 대해서 협의하고 QA 일정을 진행하는데, '이 부분들은 저희가 일정 상 테스트가 어려울 것 같다, 범위를 줄일 수 있느냐'는 이야기를 종종 듣습니다. 이 때 테스트 코드가 잘 짜여져 있다면, 테스트 범위를 어느 정도 타협해서 줄일 수 있게 됩니다. 서로가 윈윈하는 상황이 됩니다. 다만, 테스트 케이스를 짜더라도 실제로 나오는 QA 이슈들을 보면 iOS/Android에 특정된 이슈거나, 상상도 못한 재현 과정을 거쳐 발생하는 이슈들이 종종 발목을 잡곤 합니다. 이런 케이스는 테스트 코드로 작성하기 애매하거나 어려운 경우가 많았던 것 같습니다. 그래서 이런 부분들은 감안하고 직접 시뮬레이터나 실기기로 디버깅을 진행합니다. 결론은, "테스트 코드가 QA 비용 감소에 도움이 된다" 입니다 :)
익명
작성자
2024년 03월 13일
자세한 예시 감사합니다!^^
지금 가입하면 모든 질문의 답변을 볼 수 있어요!
현직자들의 명쾌한 답변을 얻을 수 있어요.
이미 회원이신가요?
커리어리 AI 봇
GPT가 달아주는 답변입니다.
2024년 03월 09일
안녕하세요, 프론트엔드 테스트코드 작성에 관한 질문에 대해 답변 드리겠습니다. 프론트엔드 테스트 코드 작성은 실제로 QA 비용을 줄일 수 있는 중요한 방법입니다. 개발 초기 단계에서 부터 품질을 확보하려면 유닛 테스트(Unit Testing), 통합 테스트(Integration Testing) 등을 적극적으로 활용하는 것이 필요합니다. 특히 리액트와 같은 라이브러리를 사용한다면, Jest나 Mocha와 같은 JavaScript testing framework를 이용해 컴포넌트의 기능을 체크하는 테스트 코드를 작성할 수 있습니다. 이를 통해 UI의 버그를 사전에 찾아내어 수정할 수 있으며, 또한 리팩토링이나 추가 기능 구현 시에도 기존 기능이 올바르게 동작하는지 확인하며 안정성을 유지할 수 있습니다. 또한, E2E(End to End) 테스트 도구인 Cypress 같은 애플리케이션의 모든 계층을 거치는 테스트도 고려해 볼 만 합니다. 이것은 실제 사용자 경험과 가장 가깝기 때문에, 전체 시스템이 예상대로 동작하는지 여부를 확인하는데 효과적입니다. 자동화된 테스트 코드 작성은 초기에는 비용이 더 들 수 있으나, 장기적으로 볼 때 버그 수정 및 회귀 테스트 등에 대한 비용을 크게 줄여주므로 많은 현업에서 적극 도입하고 있습니다. 이러한 방식을 도입함으로써 개발자가 기능 개발에 집중하고, 기존 기능의 정상 작동을 계속해서 보장할 수 있습니다. 다만, 모든 경우의 수에 대해 테스트 코드를 작성하는 것은 불가능하기 때문에 주요 플로우와 중요도가 높은 부분 위주로 검증 범위를 한정하는 것이 실질적인 효과를 보는데 도움이 됩니다.
지금 가입하면 모든 질문의 답변을 볼 수 있어요!