QA/기능 자동화

기능 자동화 환경 구성을 위해 필요했던 기술 조사부터 어떤 방식으로 환경을 구성했는지 정리하는 포스팅입니다.처음부터 끝까지 직접 작업한 내용이고, 더 나은 방법이 있을 수 있습니다 !이전에 정리했던 포스팅들의 종합적인 내용이 포함되어 있습니다 :) 안녕하세요 오랜만에 돌아온 자동화 관련 포스팅입니다. 올해는 기능 자동화를 위한 한 해가 되었던 느낌인데, 사내 발표를 진행한 내용을 바탕으로 블로그에도 포스팅해보려고 합니다. 자동화를 진행 중이거나, 어떤 방식으로 구성했는지 궁금하시다면 제 포스팅을 참고해 주세요 😎  사내에서 발표했던 내용을 바탕으로 PPT를 정리해 보도록 하겠습니다. 몇몇 자료는 제외하고 포스팅 가능한 부분만 추려서 설명해보려고 합니다. 작년부터 QA 컨퍼런스에서 자동화 관련된 얘기가 ..
기능 테스트 자동화를 구성하면서 가장 어려웠다고 생각하는 부분인 식별자가 없을 때 자동화 스크립트 작성 방식에 대해 포스팅 해보도록 하겠습니다.제 방법이 정답은 아니니까 이런 방식으로도 자동화를 구성하는구나 정도로 알아주시면 감사하겠습니다 😎 이번 포스팅은 업무를 진행하면서 가장 힘들었던 부분인 식별자가 많이 부족한 상태에서 기능 테스트 자동화 구현하는 방법에 대해 포스팅 해보려고 합니다.기능 테스트 자동화를 구현해보신 분이라면, 각 메뉴나 버튼에 대해 식별자가 있다는 것이 얼마나 큰 행복인지 잘 아실 것이라 생각됩니다 😵하지만 당연하게도 모든 버튼이나 모든 기능에 대한 식별자를 넣는다는 것은 너무너무 어려운 일입니다.반응형 웹 페이지나 동작에 의해 특정 기능이 추가되는 등 항상 동일한 화면을 표시하..
이번 포스팅에서는 기능 자동화를 구성하기 위한 POM 구조에 대한 내용을 포스팅합니다.자동화 테스트에서 왜 중요한지, 기본 개념과, 어떻게 적용할 수 있는지에 대해 포스팅하려고 합니다 😎 POM(Page object Model) 구조란 ?POM 구조는 자동화 테스트를 구성할 때 가장 기본이 되는 설계 패턴입니다. 왜 가장 기본이 될까요 ?페이지 단위로 모델링을 해야하는 장단점을 설명하는 것 보단 예시를 들어서 왜 필요한지 설명해보겠습니다 😀 오늘의 테스트 페이지는 네이버 날씨 페이지로 작성해보겠습니다 :) 우선 날씨 홈 화면 입니다. 상단에 날씨 관련 메뉴로 이동할 수 있는 "홈", "예보비교", "미세먼지", "지도", "영상", "기상특보" 페이지가 보이네요. 그리고 날씨 홈 화면에서 날씨 정보들..
기능 자동화에 대한 설명을 하다가 받은 질문에 대한 생각 정리를 한번 해보려고 합니다 😀반복되는 작업, 동일한 테스트는 더 이상 결함을 발견하지 못하기에 필요 없는 테스트가 되는 것일까요..?이번에 한번 알아보도록 하겠습니다 :) 소프트웨어 테스팅 원리 - 살충제 패러독스소프트웨어 테스팅의 7가지 원리가 있습니다.테스팅은 결함이 존재함을 밝히는 활동이지, 결함이 없음을 밝히는 활동이 아니다.완벽한 테스팅은 불가능하다.조기 테스팅으로 시간과 비용을 절약할 수 있다.결함은 집중된다.테스트 효과는 줄어든다. (살충제 패러독스)테스트는 정황에 의존적이다.결함-부재는 궤변이다 이 항목 중에 기능 자동화 테스트의 단점이라고 생각이 들 수 있는 "테스트 효과는 줄어든다(살충제 패러독스)" 항목과 관련되어 자동화에 ..
지난번 발견한 올리브영 페이지의 결함 확인 기능을 Playwright를 활용하여 자동화해보려고 합니다.Playwright가 지원하는 언어는 다양하지만 주로 사용하는 언어는 Javascript, Typescript라고 알고있고 현재 업무 진행할 때 Javascript를 활용하고 있기 때문에 Javascript 언어로 예제를 보여드리겠습니다.기능 자동화 업무를 시작한지는 얼마 안된 기간이기에 부족한 점이 있을 수 있습니다!또한 이미 자동화를 구축한 분들은 다들 알고 계신 내용 일 수 있어요 😀포스팅 관련 조언해주시면 좋을 것 같아요 :)관련 포스팅2024.06.06 - [QA/기능 자동화] - 기능 테스트 자동화, 왜 Playwright를 선정했을까? (1)2024.06.09 - [QA/기능 자동화] - ..
기능 자동화 테스트 구현에 있어서 가장 중요하다고 생각하는 식별자에 대한 얘기를 해보려고 합니다.실제 예제를 추가해서 왜 필요한지에 대해 알아보도록 하겠습니다!기능 테스트 자동화 수행 방식기능 테스트 자동화는 어떻게 동작하는 것 일까요 ??A : 모션을 녹화해서 그대로 돌아가게 하는것이잖아! 요즘은 내가 수행하는 과정들을 녹화해서 코드로 만들어주던데?라고 말하시는 분도 있었고,B : 내가 동작하는 위치의 좌표를 저장했다가 그대로 수행하는 방식!이라고 답변해주시기도 했습니다.물론 위 방법이 완전 틀린 것이라고는 생각하지 않습니다! 자동화 유료 도구 중에는 녹화를 수행하여 기록을 완료하면 바로 스크립트를 구성해주는 도구도 있었습니다 (ex: Katalon Studio)그리고, 항상 고정된 위치에 버튼이 있는..
Selenium, Cypress, Puppeteer, Playwright 자동화 도구 중 Playwright를 선정 한 이유에 대하여 기술합니다.각 자동화 도구마다 장단점이 있으니 참고용으로 사용해주세요!이전 글2024.06.06 - [QA/기능 자동화] - 기능 테스트 자동화, 왜 Playwright를 선정했을까? (1) 기능 자동화 테스트 대상 분석자동화 도구를 선정하기 전 테스트 대상이 어떤 테스트를 원하는지 분석하였습니다.테스트 대상은 사내 제품인 채팅 상담 솔루션 제품이며, 고객과 상담사간의 대화를 지원하는 프로그램입니다.테스트 대상인 상담 솔루션 제품은 어떤 테스트를 원할까요? 제품이 설치되는 환경은 고객사 환경마다 다르기에 어떤 브라우저를 쓸지 모르는 상태입니다.그래서 우선적으로 크로스 브라..
기능 테스트 자동화 라이브러리에 대한 비교 및 사내에 맞는 라이브러리를 선정하기 위한 자료 조사의 결과를 기술합니다! 비슷한 환경이거나 라이브러리마다 장단점이 있기 때문에 무조건 Playwright가 좋다기보단, 참고용으로 생각해주시면 좋을 것 같아요 :)  기능 테스트 라이브러리를 선정하기 위한 과정사내에는 기능 자동화 테스트 관련 작업이 진행된 적이 없었습니다. 그래서 처음부터 하나씩 알아가야하는 상황이었고, 가벼운 경험이라면, Selenium을 사용하여 로그인정도 해본 경험, 웹 화면 동작 레코딩 방식을 사용하여 코드를 얻어와서 수행하는 작업, 유료 툴인 Katalon 도구를 이용한 자동화 수행 경험을 가지고 있었지만, 자동화 프로젝트를 진행할 만큼 지식 수준은 아니었어서, 이번 자동화 프로젝트를 ..
Subi-QA
'QA/기능 자동화' 카테고리의 글 목록