본문 바로가기
QA

테스트 자동화의 적용시점 (언제, 무엇을, 어떻게, 왜) - 2편

by Zeromk2 2020. 10. 10.
728x90

이전 포스팅에서 테스트 자동화의 적용 시점 (언제 / 무엇을) 에 대해 이야기 했습니다.

 

 

테스트 자동화의 적용시점 (언제, 무엇을, 어떻게, 왜) - 1편

테스트 자동화가 QA활동에 있어 많은 도움을 주는 것은 다양한 포스팅에서도 확인 할 수 있고, 현재 채용 시장에서 테스트 자동화가 가능한 인원의 채용 비율이 매우 높은 것으로도 간접적인 확�

goddessbest-qa.tistory.com

 

이어서 "어떻게" 와 "왜" 에 대한 이야기를 해보겠습니다.

 

3. 어떻게  (How)             

테스트 자동화가 구축이 되었습니다! 
테스트 자동화가 메뉴얼 테스트보다 정확하고 빠르니 모든것을 대체하도록 진행해야겠습니다.
이럴경우 테스트 자동화를 언제부터 사용할 수 있게 되는 걸까요?

테스트 자동화는 하루이틀만에 뚝딱 완성이 되는 것이 아니고 제품의 크기에 비례하는 개발 기간과,

계속되개발 내용을 지속적으로 반영까지 해야합니다.

그렇기 때문에 오랜 시간을 들여서 만들어야 하고, 계속해서 개발해야 하죠.

그래서 테스트 자동화는 최대한

1. 유지보수가 쉽게 가능해야 하고.

2. 학습이 용이해야 하며 (쉬운 가이드 라인과 가이드 문서들)

3. 만들어 놓은 자동화는 누구든지 쉽게 접근하여 사용할 수 있도록

되어야 합니다.

개발 속도에 비해 자동화 속도가 느리다면 다시금 메뉴얼 테스트의 비중이 점점 늘어나게 되고 이는 물리적인 시간의

추가가 계속해서 필요해진다는 이야기가 됩니다. 이럴경우 점점 자동화와 멀어지게 될 수 있으므로 빠르게 수정하고 

빠르게 개발할 수 있어야 합니다.

이러기 위해서는 이해하기 쉽고 습득이 쉬운 가이드 라인을 만들어서 공유하거나, 숙련된 자동화 엔지니어를 

투입시키는 방법이 있을 수 있습니다.

그리고 만들어 놓은 자동화는 팀 내에 모든 인원이 사용할 수 있도록 하는 것이 좋습니다.

Back End (이 예 에서는 API) 자동화를 구축해 놓았으면 Back End 조직에서 서버를 업데이트 하거나 재시작 한 후에 

서버가 정상적으로 동작하고 있는지 확인하게 할 수 있는 도구로

QA 조직에서 만든 Back End 자동화를 사용할 수 있습니다.

CI/CD툴을 사용해서 구축해 놓았다면 쉽게 접근과 사용이 가능하겠죠 (저는 Jenkins를 사용하고 있습니다)

Front End 팀도 마찬가지 입니다. 앱이나 웹 클라이언트가 신규로 배포되어 업데이트 된 후에 미리 구축되어있는

Front End 테스트 자동화를 진행하여 결과를 리포트 받게 되면 정확하고 빠른 피드백을 받을 수 있게 됩니다.

물론 일반적으로 자동화를 실행하는 것은 QA조직이지만, 주말이나 야간혹은 퇴근 이후 갑작스러운 핫픽스나 나간다면

미리 구축되어 있는 테스트 자동화가 큰 역할을 하게 됩니다.

 

 

4. 왜  (Why)                 

QA조직이 오늘도 힘겹게 제품 테스트를 마치고 릴리즈를 완료했습니다. 
계속되는 야근과 반복 업무로 인해 피로는 쌓일대로 쌓여서 자동화를 구축하려고 합니다.
하지만 지금도 제품 릴리즈에 아무 문제가 없는데 왜 이걸 해야 하냐고 질문이 돌아옵니다.

구글도 최초의 QA조직이 있었을 때에는 단순 UI 테스트만 진행되었습니다.

하지만 곧 제품의 규모가 커짐에 따라 이러한 형태의 QA로는 한계가 있음을 느끼고 QA인원들에게 전산학과

코딩교육을 진행했다고 합니다. 

이 이유는 무엇이였을까요? 

UI테스트만 해서는 그 외에 부분에서 나오는 결함들을 발견해서 수정을 할 수 없었기 때문에죠.

여기서 말하는 '그 외에 부분' 을 최대한으로 넓히기 위해서는 프로그램을 알아야 했습니다. 

그럼 가장 뿌리가 되는 곳 부터 검증이 가능했으니까요. 

테스트 자동화를 해야 하는 것도 이와 같은 이유입니다.

테스트 자동화가 됨으로 해서 QA조직은 시간과 인적 리소스를 절약할 수 있고 그렇게 확보된 리소스를 통해서

더 다양한 QA활동이 가능해질 수 있기 때문이죠.

이는 제품의 완성도를 높이는데 매우 중요한 역할을 하게 됩니다.

그렇기 때문에 지금 테스트 자동화는 "왜 해?" 가 아니라 "왜 안해?" 와 같은 선택이 아니라 완전 필수가 되었죠.

 

 

이렇게 크게 4가지 항목으로 테스트 자동화 적용에 대한 이야기를 해봤습니다.

저의 경험에 비추어 작성한 내용이기 때문에 다른 QA분들이 속해있는 현재 프로젝트 혹은 현재 제품과는

맞지 않는 내용일 수도 있습니다.

그래도 테스트 자동화를 5년 가까이 하게되면서 알게된 부분이기 때문에 이게 정답이라는게 아닌

이것도 한 종류의 "테스트 자동화의 기조" 라고 봐주시면 될 것 같습니다 :)

긴 글 읽어주셔서 감사합니다.

 

 

구글은 소프트웨어를 어떻게 테스트하는가:구글의 테스팅 문화와 기법에 관한 인사이드 스토리, 에이콘출판Do it! 점프 투 파이썬:이미 200만명이 이 책으로 프로그래밍을 시작했다!, 이지스퍼블리싱소프트웨어 테스트 실무 가이드, STA테스팅컨설팅현직 테스팅 전문가들이 낱낱이 밝힌 구글과 마이크로소프트의 소프트웨어 테스팅 솔루션 세트, 에이콘출판웅진 초록매실 500ml, 20개탐사 탐사수, 1L, 12개

 “파트너스 활동을 통해 일정액의 수수료를 제공받을 수 있음"

댓글