테스트라는 단계를 가볍게 생각할수록 개발이 중요한 거지, 테스트? 그냥 오류 없는지 확인하면 되는 거 아닌가?
라고 생각될 수 있습니다.
하지만, 테스트..? 어떤 테스트를 어떻게 할건데? 우린 뭘 어떻게 해야 하는데..?

테스트를 진행하는 방식은 단위 테스트부터 자동화까지 정말 다양하게 있습니다.
그럼 우리 제품은 뭘 어떻게 진행해야 하는데?라고 생각해 보며, 테스트 진행 방식을 계획한 뒤 업무를 수행합니다.
이전 포스팅에서 다뤘던 SDLC에 대한 글을 보셨다면, 중간중간 QA의 역할에 대해 설명드렸습니다.
STLC란? 체계적으로 구분되어 있는 SDLC에서 QA의 역할을 구분해 놓은 것이 STLC(Software Testing Life Cycle, 소프트웨어 테스팅 생명주기)이며, 각 단계에 맞는 작업을 진행하며 제품의 품질 향상을 위한 노력을 진행하고 있습니다.
2025.10.15 - [QA/업무 방식] - SDLC(개발 방법론)와 활용 모델에서 QA는...?
SDLC(개발 방법론)와 활용 모델에서 QA는...?
SDLC(Software Development Life Cycle), 즉 개발 방법론에서 QA의 역할을 공부해 보다가 정리해 볼 겸 작성하는 포스팅입니다 :) 포스팅에서 나오는 자료는 Simplilearn 자료를 참고하여 작성하였습니다. (https:
qa-subi.tistory.com
SDLC와 STLC 어떤 점이 다른 건데?
요구사항 분석부터 배포까지 이어지는 개발과정에서 QA는 어떤 것을 해야 하는지 프로세스를 정의한 것이 STLC이기 때문에, SDLC와 STLC는 각 단계는 서로 매칭되어 비교될 수 있습니다.
SDLC 각 단계에 맞는 QA 활동을 하는 것이기에, 자연스럽게 테스트 전처리와 후처리, 즉. Shift-left, Shift-Right 효과도 같이 활용된다고 생각됩니다.

SDLC와 STLC의 과정은 유사하지만, 프로세스의 진행 관점은 다른 부분이 있습니다.
SDLC는 어떤 제품을 만들 것인가? 에 중심을 두어 프로세스를 진행한다면,
STLC는 제품을 어떻게 테스트할 것인가? 에 중심을 두어 프로세스를 진행한다는 점입니다.
그럼 이제 STLC의 과정을 가볍게 살펴보며 내용을 정리해 보겠습니다.
STLC 프로세스에서 수행하는 업무
SDLC 관련 포스팅에서 작성한 QA의 역할 설명과 유사한 부분이 많지만, 내용 정리 겸 하나씩 작성해 보겠습니다 :)
요구사항 분석 단계
QA의 요구사항 분석 단계는 어떤 제품이 개발될지 확인하고, 테스트가 가능한 요구사항을 식별하는 단계입니다.
어떤 식으로 테스트할지 생각해 보고, 제품을 파악하는 단계라고 생각됩니다.
기능 파악을 진행하고, 테스트 범위를 선정하여 대략적인 계획도 나올 수 있겠네요!
기획서 내용을 확인하고 기획서에서 부족한 내용을 확인하여 기획, 개발팀에 의견을 전달하는 역할도 중요합니다.
예를 들어, 장바구니에 담을 수 있는 상품이 5개로 제한되어 있다는 기획이면, 6개를 넣었을 때 어떤 안내 문구를 전달해야 하며, 어떤 식으로 제공해야 하는지, 토스트 알림으로 표시되는지 화면에 안내 문구를 표시해 주는 것인지 등등 기획자도 사람이기 때문에 세세한 부분을 놓칠 수 있습니다.
이 부분을 미리 확인해 준다면, 개발 진행 중 기획서의 부족한 내용을 확인하고 직접 기획자에게 문의하러 가는 개발팀의 노고를 줄여줄 수 있겠죠?!
저는 주로 기획서를 확인할 때 사용자가 제품을 비정상적으로 동작할 때 어떤 식으로 정상 동작을 유도할 수 있는지를 관점을 두고 개선 의견이나 기획서의 부족한 부분을 확인하는 편입니다.
테스트 설계 단계
테스트 설계 단계에서는 어떤 방식으로 테스트를 진행할 것인지, 개발 단계 전 미리 확인하는 과정을 진행합니다.

어떤 디바이스와 환경을 구성해서 진행할지, 테스트 전략을 수립하며, 사용될 리소스 일정, 도구 등 어떤 방식으로 테스트할지 생각해 보는 과정을 진행합니다.
필요시 테스트 계획서를 작성하여 다른 팀에 공유합니다.
설계에서 중요하다고 생각되는 부분은 어떤 방식으로 어떻게 테스트를 수행한다가 정의되면 될 것 같습니다. 이 과정을 생각해 본다면, 이후 필요한 리소스는 무엇이고, 어떤 것들을 준비해 놔야 수월한 테스트 일정이 진행될지 확인할 수 있거든요!
하지만, 프로젝트는 생각대로 진행되지 않는 부분도 많으니 상황에 맞게 대응할 수 있는 유연함도 필요하다고 생각됩니다 :)
테스트 케이스 개발 단계


테스트 케이스 개발 단계에서는 설계, 계획 단계에서 구성했던 테스트 진행 방식을 기반으로 케이스를 작성할 단계입니다.
E2E 테스트 자동화, 성능 테스트, API 테스트 등 다양한 테스트 방식에서 활용할 도구를 기반으로 테스트 케이스를 작성합니다.
회사마다 사용하는 도구, 스크립트 작성 언어에 따라 케이스를 생성하는 방식은 다르고, 매뉴얼 TC의 경우 엑셀로 관리하는 회사도 많이 봤습니다.
이 부분은 관리 역량이 아닌, 개발 역량과 TC 작성 역량이 필요한 부분입니다.
요즘은 TC를 작성하는 것에 AI를 활용해서 작성하는 경우도 많기 때문에 다양한 레퍼런스를 통해서 TC를 효율적으로 작성하는 방식을 활용해야 한다고 생각합니다.
테스트 케이스를 작성하는 방식이나 자동화 기술에 대한 내용은 다른 포스팅에 간략하게 작성해 두긴 했으나, 꾸준하게 학습해서 트렌드를 따라가는 것을 권장드립니다
그리고, 개발 단계에서 요구사항이 변경되는 경우도 종종 있으니, 기획서만 보는 것이 아니라, 협업을 통해 개발 과정을 모니터링하며 TC를 작성하는 것이 중요하다고 생각합니다!
TC 작성기간이라고 해서 내 업무만 하다 보면 나중에 변경 사항을 확인하지 못한 부분에 잘못된 결함을 제공할 수 있기에 귀를 열어두고 TC를 작성하는 것이 필요합니다 :)
테스트 환경 구축 단계

테스트 진행하기 전 필요한 환경을 구축하는 단계입니다.
QA가 직접 환경을 구축하는 경우도 있고, 개발팀의 환경 지원을 받아서 테스트 서버를 구축하는 경우도 있습니다.
별도의 환경에 구축하여, 개발 환경과 분리되어 코드 프리징 된 환경으로 테스트를 진행해야 확실한 테스트가 될 것이지만, 이것도 상황에 따라 유동적으로 변경될 수 있을 것 같습니다.
수시로 배포되는 환경에서는 매번 테스트 환경을 구축하는 것도 어려운 부분이니까요 😂
Devops로 테스트 서버가 구축될 수 있는 환경이 있다면 가장 좋지만, 어렵다면 직접 구축하거나 어쩔 수 없을 땐 개발 서버에서 코드 푸시를 멈추고 작업하는 경우도 고려할 수 있겠네요!
이상적인 환경은 있을 수 있지만, 항상 지켜질 수 있는 것은 회사 환경에 따라 다를 수 있으니까요.. ㅠ
테스트 실행 단계
테스트 실행 단계에서는 테스트 케이스 개발 단계에서 작업했던 내용을 기반으로 테스트 서버에서 스크립트 수행이나 매뉴얼 테스트를 진행하여 결과를 제공하는 단계입니다.

다양한 기법을 활용해서 제품의 품질 지표를 제공하고, 발생한 결함은 BTS 도구를 통해 전달하며 결함이 빠르게 수정될 수 있도록 협업하는 것이 중요합니다.
결함을 제공하는 방식에 대해 의견을 공유하고, 피드백받으면서 결함을 어떤 방식으로 제공해야 잘못된 소통을 예방할 수 있는 방법일지 고민해 보며 테스트하는 것이 필요하다고 생각됩니다.
결함을 많이 찾아서 제공하는 것도 중요하지만, 어떤 식으로 재현 가능한지, 어떤 부분에서 문제가 나왔는지 개발팀에 함께 제공해 준다면 전체적인 일정을 줄일 수 있으니까요!
테스트 종료 단계

테스트 설계 단계에서 수립한 종료 기준을 기반으로, 제품에 대한 테스트를 종료해도 되는지 확인하고, 결과 리포트를 제공하는 단계입니다.
예를 들면, 중 결함이 0건이어야 하는 기준, 작은 결함은 몇 개까지 허용되며, 일정이 부족하여 결함을 다 수정 못했을 경우, 추후 수정 일정에 대한 계획도 수립할 수 있습니다.

TC 수행 도구를 활용했다면, 수행한 이력을 전달하여 현황을 공유하기도 하고, 별도의 결과 리포트를 만들어서 제공하기도 합니다.
전체 프로세스를 진행하는 과정에서 문제점이나 개선 사항을 정리하여 회고를 통해 다음 프로세스 진행 과정에 개선하여 작업을 진행할 수 있을 것 같습니다.
SDLC의 포스팅을 하고 STLC도 한번 정리가 필요할 것 같아서 내용을 작성해 봤습니다.
너무 상세한 부분은 생략한 부분도 있고, QA는 이런 과정으로 업무를 진행하는구나 정도로 내용을 확인하면 좋을 것 같습니다 :)
읽어주셔서 감사합니다!

참고 자료
https://www.bdtask.com/blog/difference-between-sdlc-and-stlc
Core Difference Between SDLC and STLC
SDLC and STLC are both important frameworks to ensure software products are built efficiently, meet business…
www.bdtask.com
https://blog.bytebytego.com/p/ep82-open-sourcing-over-100-byte?utm_source=publication-search
EP82: Open-sourcing Over 100 Byte-sized System Design Concepts
This week’s system design refresher: Open-sourcing over 100 byte-sized system design concepts with high-resolution diagrams Best ways to test system functionality Cloud Network Components Cheat Sheet Explaining 5 unique ID generators in distributed syste
blog.bytebytego.com
https://www.frugaltesting.com/blog/the-crucial-role-of-test-environment-setup-in-software-testing
The Crucial Role of Test Environment Setup in Software Testing
Explore the importance of test environment setup in software testing. Learn best practices for test environment management to ensure seamless testing
www.frugaltesting.com
'QA > 업무 방식' 카테고리의 다른 글
| AI 잘 쓰시나요?가 아닌 프롬프트 잘 쓰시나요? (2) | 2025.10.26 |
|---|---|
| SDLC(개발 방법론)와 활용 모델에서 QA는...? (2) | 2025.10.15 |
| QA 업무를 진행하면서 AI를 활용한 방법 (0) | 2025.09.30 |
| 테스트 레벨 별 비정상 테스트 케이스 작성 방식 (매뉴얼 TC) (3) | 2025.08.24 |
| 테스트 레벨 별 네거티브 테스트케이스 작성 방식 (API TC) (3) | 2025.08.16 |