풀스택 테스트 - 10가지 테스트 기술의 기본 원칙과 전략
가야트리 모한 지음, 최경현 옮김 / 한빛미디어 / 2023년 5월
평점 :
장바구니담기



내 경우, 회사에 소속도 하고, 1인 #개발자 활동도 하며, 일반 관리 애플리케이션부터 웹 #프로그램, 자동화 프로그램, 모바일앱 등 오랜 시간에 걸쳐 #프로그래머 로서 다양한 경험을 쌓은 편이라 아주 전문적인 파트를 제외하면, 프로그램 개발에 별다른 부담을 갖는 편은 아닌데, 개인적으로 매우 미숙하다 느끼는 파트가 있다면, 프로그램 테스트 쪽이다.


마음만은 언제나 완벽한 #소프트웨어 테스트를 마쳐서 개발을 종료하고 싶지만, 빠듯한 일정에 쫓기다 보면, 겉으로 드러난 디버깅 수준 정도로만 끝나는 경우가 많다. 그러다 문제 생기면, 허둥지둥 코드 보고 문제점 찾는 그런 일들이 자주 생기고 만다. 그나마 내공이 쌓이면서, 일반적으로 생길 수 있는 문제들은 미리 코딩 작업에 미리 적용해서 #프로그래밍 하기 때문에 여태 큰 문제가 발생하지 않았지만, 테스트를 충분히 했든 못했든 아직 내 테스트 지식이나 실력을 믿을 수 없다 보니, 언제나 화장실 갔다가 뒤를 들 닦은 듯한 기분을 지울 수가 없었다. 뭔가 불안불안한 거다.



개발자라면 다들 이런 찜찜함 없이 완벽한 프로그램을 짜고 싶을 것이다. 나 역시 마찬가지다. 그래서 현실이 안 따라줘도 #애자일 방법론이며, 소프트웨어 테스트 관련 기술 정보를 보게 되면, 항상 관심을 가지고 봐왔다. 그러다 이번에 단편적인 지식이 아닌, 뭔가 종합적으로 테스트 기술을 정리하고, 미흡한 실력도 높여보고 싶어, 품질 보증 관련 전문가인 가야트리 모한의 '풀스택 테스트'를 보게 되었다.


책 제목인 풀스택 테스트는 UI, 서비스, 데이터베이스 등 애플리케이션에 포함된 각 계층과 애플리케이션 전체를 테스트하는 것을 의미한다. 난 프로그램에 관련된 해볼 수 있는 온갖 테스트는 다 해본다는 뜻으로 이해했다. 실제 책을 보면, 진짜 다양한 테스트 기술들이 나온다.



#풀스택테스트 에서는 풀스택 테스트를 크게 10가지 영역으로 나눠 얘기한다. 수동 탐색적 테스트, 자동화된 기능 테스트, 지속적 테스트, 데이터 테스트, 시각적 테스트, 보안 테스트, 성능 테스트, 접근성 테스트, CFR 교차 기능 요구사항 테스트, 모바일 테스트가 바로 그것들로 프로그램 테스트에 관심이 조금이라도 있었던 사람이라면, 단편적으로 나마 조금씩은 들어 봤을 것이다.



특히 모바일 테스트 파트 경우, 요즘은 PC 보다는 스마트폰이나 태블릿 같은 모바일 기기를 더 많이 사용하므로 빼놓을 수 없는 테스트다. 게다가 '풀스택 테스트'는 증강현실, 사물인터넷, 인공지능, 블록체인 같이 최신 기술 관련한 부분도 간단하지만 빼놓지 않고 다루고 있어 테스트 개념을 IT 기술 종합적으로 정리할 수 있어서 좋았다.



이렇게 '풀스택 테스트' 책 구성 자체가 각각의 영역별로 나눠져 있고, 그 안에 구성 요소, 테스트 전략, 실습, 요점 정리라는 내용 구조가 되어 있는 데다, 이것들을 이해하기 쉽게 정리해서 그려 놓은 각종 도표와 그림들이 머릿속에 체계적으로 정리하는데 큰 도움이 된다. 여기에 중요 용어나 문구는 굵은 글자나 형광펜 그은 거처럼 처리해서 강조되어 있어 바로 눈길을 끌어주고, 사각 상자, 또는 NOTE 코너, 다양한 주석들이 있어서, 좀 더 이해하기 쉽게 해준다. 저자가 좀 더 강조하고 싶은 이야기는 인사이트 영역에 담았다.



'풀스택 테스트'는 소프트웨어 #테스트 개념을 이론적으로 체계적으로 세울 수 있다는 장점과 함께 실무적으로도 다양한 스킬을 얻을 수 있다. 이 책에는 포스트맨, WireMock, 버그 마그넷, 크롬 개발자 도구, TestNG, 셀레니움 웹 드라이버, jUnit, Git, 제로코드, BackstopJS, Cypress, OWASP Dependency-Check, 제이미터, WAVE, 앱피움, 몽키 등등 각 테스트 단계에 직간접적으로 요긴하게 쓸 수 있는 각종 도구나 프레임워크 같은 것들이 매우 많이 소개되어 있다. 나처럼 테스트 경험이 충분치 않은 사람들에게는 엄청난 도움이 되는 정보들이다. 뭘로 테스트해야 하나 하는 막연함을 많이 덜 수 있다.



'풀스택 테스트' 덕분에 내가 그동안 뭘 잘하고 있었는지, 못하고 있었는지, 아예 모르고 있었는지 좀 더 명확하게 알 수 있었다. 개발 시야를 전체적으로 확장하는 데 도움이 되었다. 내가 작업한 프로그램 품질을 어떻게 향상 시킬 수 있는지 구체적인 지식을 얻을 수 있었다.


어느 정도 경험이 있는 개발자 입장에서는 '풀스택 테스트' 내용이 그다지 어렵지 않을 것이다. 접해보지 않은 부분만 관심을 가지고 보충하면 된다. 반면, 초보 개발자 입장에서는 '풀스택 테스트'의 내용들이 어려울 수도 있고, 그다지 와 닿지 않을 수 있다. 그러나 소프트웨어 테스트는 품질 관리에 빼놓을 수 없는 작업이므로 어느 정도 이해는 경력 상관 없이 꼭 필요하다. 지금 당장 이해가 안 돼도 시간이 지나면, '맞아 맞아, 그때 그 말이 맞았네'하며 많은 부분 공감되는 상황이 벌어질 것이다. 그만큼 개발자 근육을 강화하는데 꼭 필요한 단백질 같은 지식이다. 게다가 해외에 비해, 우리나라는 풀스택 테스트 기술을 가진 인력 자원들이 많지 않다고 한다. 이런 지식을 알아 두면, 경력 업그레이드에도 좋을 것이고, 해외 진출에도 도움이 될 것이다. 개발자라면 꼭 읽어 보라고 추천하고 싶다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo