본문 바로가기

애자일 테스팅

(11)
스프린트의 시작, 충분히 성공적인가요? 「스크럼 개발 방법론은 속도 지향적입니다」  Sprint(단거리 경기, 전력 질주 🏃), Velocity(움직임의 빠르기, 속도)와 같은 단어에서 느낄 수 있고, 스크럼 가이드에서 권유(?)하는 이터레이션의 주기 또한 1~4주 사이로 짧은 데서도 알 수 있습니다. 「스크럼 개발 방법론은 성과 지향적입니다」스크럼 가이드에서 “스크럼의 핵심(heart)은 한 달 이내 유저에게 가치를 제공하고 잠정적으로 배포 가능한 개발 증분을 완료하는 스프린트에 있다.” 라고 합니다. 이로 인해 스크럼 팀 구성원들은 주간 잡지에 글을 기고하는 것처럼 어떻게든 마감일 이전에 산출물을 만들어내야 하는 심리적인 압박에 놓입니다. 이러한 속도전에서 올바른 성과를 내기 위해서는 충분한 정도의 기획 상세, 기술 검토, 연관성 분석,..
QA가 놓친 이슈는 어떻게?..어디까지 테스트 해야?.. 며칠 전, SNS에서 QA에 대한 궁금한 점을 문의주셔서 제 나름의 답변을 간단히 드렸는데요.여기에도 기록해 둡니다.   QA 테스트를 완료했는데, 그 뒤에 QA가 놓친 이슈를 빠르게 탐지할 수 있는 방법이 있을까요? 어떤 형태의 QA의 추가적인 테스트는 제외한다면, 에러 모니터링, 자동화된 테스트 또는 유저 Acceptance Test 정도가 있을 것 같습니다.에러 모니터링은 해당 이슈가 서버에 에러를 남긴다거나 혹은 이상 로그를 남길 경우에 해당 에러/로그 모니터링을 통해서 탐지할 수 있고자동화된 테스트는 흔히 얘기하는 리그래션 자동화 테스트 셋트처럼 주요 기능들을 미리 구현된 자동화 테스트를 통해 한 번 더 점검할 수 있습니다.유저 Acceptance Test는 (개발 프로세스 안에서 어떻게 운영..
2주 스프린트라는 굴레 (2주 스프린트라는 굴레에 갇혀 발버둥 치는 IT업계의 모든 동지들을 생각하며….. 💪)스크럼 개발 프로세스에서 반복되는 짧은 개발 주기마다 지속적인 품질과 생산성을 유지하기 위해서는 모든 프로세스 단계가 그에 맞게 최적화되어 있어야 합니다. 정말 군더더기 없이 잘 준비된 아이템을 한 치의 오차와 지연 없이 거뜬하게 해낼 때야 다다를 수 있는 경지가 2주 스프린트가 아닌가 생각합니다. 때문에 많은 IT 조직이 맹목적으로 2주를 겨냥하지만, 기대만큼의 결과를 보지 못하고 업무 피로도만 쌓여가는 경우가 많습니다. 그런데, 정작 스크럼 가이드에서는 스프린트 기간이 꼭 2주여야 한다고 언급하진 않습니다. 대신, 스프린트 주기가 짧을수록 다음과 같은 이점이 있다고 얘기합니다.데모를 더 자주 실시하여 솔루션이 실..
잦은 기획의 변경은 무조건 용인되어야 하나? 개발 진행 중에 발생하는 잦은 기획 변경은 애자일 선언문의 다음의 가치와 원칙에 의해 용인됩니다.애자일의 가치 4번째 : ‘계획을 따르기보다 변화에 대응하기를’애자일의 원칙 2번째 : ‘비록 개발의 후반부일지라도 요구사항 변경을 환영하라.’모든 선언문이 그것이 출현한 시대를 반영하듯 애자일 선언문도 1990년대를 반영하고 있습니다.웹이라는 시장이 막 꿈틀대던 새로운 기회의 시기,전례가 없어 아이디어를 가진 자와 만들어야 하는 당사자들도 될지 안 될지 한 치 앞을 몰랐던 예측 불가능한 불확실의 시기,그래서 같이 머리를 맞대고 흰 백지에 한 땀 한 땀 점을 찍고 선을 그려가듯 함께 만들어가야만 했던 시기,그래서 비록 개발의 후반부일지라도 분명한 요구사항의 변경이 더 반가웠을 수 있었을 그런 시기였습니다. 유..
버그 회고, 품질 프로세스 개선의 첫걸음 (RCA) 애자일 개발 프로세스의 성공은 회고(Retrospective)와 실천에 달려있다 생각합니다. 낯설고, 빼각거리기 일수이고, 통제 불가능한 일이 계속되는 상황에서, 회고를 통해 문제를 인식하고 실행 가능한 액션 아이템들을 도출해내는 것은 프로세스 개선을 위한 필연적인 단계입니다. 그리고 그렇게 도출된 액션 아이템들을 진정성있게 실천할 때 비로소 좀 더 나아진 프로세스를 기대할 수 있습니다. 품질 프로세스를 개선해나가는 방법 또한 동일합니다. 개발 프로세스 안팎에서 발견된 버그들을 기록하고, 분석하고, 더 빨리 찾고 나아가 예방할 수 있는 방안들을 마련하고 꾸준하게 실천해 감으로써 품질 프로세스를 개선해 나갈 수 있습니다.스프린트 기반의 애자일 개발 방식의 유행에 기대어 ‘회고’ 라는 단어로 이야기를 시작했..
테스트 맵을 활용한 테스트 ‘테스트 케이스’는 QA 업무를 대표하는 키워드 중에 하나일 것입니다. 프로젝트 팀원들이 QA 엔지니어에게 바라는 절대적인 작업 산출물이기도 합니다. 어떤 테스트 관리툴을 쓰느냐의 차이는 있지만, 대부분 아래와 같은 형식입니다. 그리고 이 형식은 제가 처음 일을 시작했던 2005년과도 크게 다르지 않습니다.기존 테스트 케이스 문서의 문제점기존 형식의 테스트 케이스는 작성하는데 시간이 많이 걸리고 부피가 큽니다. 많은 시간을 들여 작성하는데도 불구하고 거의 읽히거나 검토되지 않습니다. 애자일한 개발 환경에서 이러한 문서의 구조는 빈번하게 발생하는 변경 사항에 유연하게 대응하기 어렵고, 압축된 개발 주기에서 문서화에 너무 많은 시간을 소비하게 돼 실제 테스트를 수행하는 데 할애할 수 있는 시간이 제한적이게 ..
Postman에 API 컬렉션 빠르게 생성하기 Postman은 API 테스트 용도로 많이 활용되는 도구입니다. Postman 컬렉션을 사용하면 관련된 API 요청을 그룹화할 수 있고, 그룹단위로 전체 실행 및 Jenkins와 연동하여 테스트 자동화를 쉽게 구현할 수 있습니다.이 글에서는 프로젝트를 진행하면서 쉽고 빠르게 API컬렉션을 구성할 수 있는 몇 가지 방법에 대해 적어 보았습니다.1. Swagger → Postman개발 팀에서 API 개발 문서화 도구로 Swagger를 사용하는 경우, 링크를 통해 전체 API 셋을 쉽게 가져올 수 있습니다.Swagger doc(Json) URL → (Postman) Import → Links2. 브라우저 개발자 도구 → Postman2-1. Copy as cURL (bash) → (Postman) Import..
애자일 테스팅 회고 애자일 개발 환경에서 QA의 역할은 무엇일까요? 단순히 개발 초기부터 테스트를 수행하는게 ‘애자일 테스트’ 일까요 ? ‘성공을 보장하는 듯’한 방법론과 성공수기.. 그런데 우리 조직에 맞는 답은 어디에 있을까요? 애자일 개발 프로세스에서 생산성과 품질이라는 두 마리 토끼를 쫓아가는 과정에서 고민한 것들에 대해 적어보았습니다.애자일 테스팅 맛보기 (쓴맛)위키피디아의 설명을 빌리면 애자일 테스팅이란 “애자일 소프트웨어 개발 프로세스의 원리를 따르는 소프트웨어 테스팅 방법” 이라고 설명되어 있습니다. 개발 주기 안에서 개발과 함께 테스트가 진행되고, 제품의 퀄리티는 전체 팀원의 몫이라 얘기합니다.스프린트, 칸반, TDD, ATDD, BDD, XP, Lean, 애자일 테스팅 사분면, 테스트 자동화, 테스트 피라..