데보션앱 소개페이지 바로가기
로그인 선택

신고하기

CLOSE
신고사유 (대표 사유 1개)
상세내용 (선택)
0/200
  • 신고한 게시글은 더 이상 보이지 않습니다.
  • 이용약관과 운영정책에 따라 신고사유에 해당하는지 검토 후 조치됩니다.
  • 허위 신고인 경우, 신고자의 서비스 이용이 제한될 수 있으니 유의하시어 신중하게 신고해 주세요.
(이 회원이 작성한 모든 댓글과 커뮤니티 게시물이 보이지 않고, 알림도 오지 않습니다.)

미리보기

커뮤니티

      1,234

      badge 23.06.15

      글 등록

      카테고리를 선택해주세요.

      DEVOTEE를 활성화 시키면
      지금 작성한 커뮤니티 글에 대해 1개의 댓글을 달아줍니다.

      버튼을 누르면 글 수정 시 ChatGPT가 작성한 댓글이 수정됩니다.

      임시저장함에 저장되었습니다. 저장일시 : 2022.5.17 14:29:08

      임시저장함

      제목을 선택하시면 이어서 작성이 가능하며,
      최대 20건까지 저장합니다.
      컨텐츠 유형, 제목, 저장일시, 삭제로 이뤄진 임시저장 목록
      컨텐츠 유형 제목 저장일 삭제

      데보션 블로그 게재 요청

      CLOSE
      • *
      • *

      본인인증

      효율적인 데보션 서비스 이용 및
      고객님의 소중한 개인정보보호를 위해
      본인인증을 진행해주세요. 본인인증 미 진행 시 로그인이 제한됩니다.
      본인인증 실패

      본인인증 로그인에 실패하였습니다.
      회원이 아니시거나 본인인증 등록이
      완료되지 않은 사용자입니다.

      회원정보 연결

      QA Ops Engineer

      SSunny 24.03.26
      2,517 14 0
      DEVOTEE 요약
      QA Ops는 Quality Assurance Operations의 축약어로, 소프트웨어 테스트와 품질 보증을 DevOps 프로세스에 통합하는 방법론을 말합니다. 이는 소프트웨어 개발 전체 과정에서 지속적인 검토를 통해 버그를 조기에 발견하고, 빠른 제품 출시를 가능하게 합니다. 이를 위해 계획, 자동화, 패키지화, 테스트, 릴리스, 트리거 설정, 실행 및 결과 보고 등의 과정을 거치며, 각 단계별로 다양한 도구들을 활용합니다.
      DEVOTEE 추천 블로그

      들어가며

      QA Ops Engineer 구직광고를 보고 DevOps, LLMOps, QAOps 까지 정말 많은 Ops가 나왔구나 하는 생각이 들었습니다.

      QAOps는 QA 프로세스를 정의 및 간소화하고, QA 프로세스를 DevOps에 통합하여 모든 QA 활동을 CI/CD 파이프라인에 구현하는 것입니다.


      이제 QA Ops에 대해 알아보겠습니다.

      QA Ops는 Quality Assurance Operations의 줄임말인 QAOps는 소프트웨어 테스트와 품질 보증을 DevOps 프로세스에 원활하게 통합하는 방법론입니다.

      QAOps는 소프트웨어 개발 라이프사이클의 시작부터 배포에 이르기까지 개발 주기 전반에 걸쳐 지속적인 검토와 지침을 제공하여

      버그를 조기에 식별하고 해결할 수 있으므로 궁극적으로 최종 제품 제공 속도를 높일 수 있습니다.

      또한 이러한 접근 방식은 프로세스 전반에 걸쳐 품질 보증 팀의 책임감을 높여줍니다.


      QAOps Life Cycle


      그림출처


      QAOps는 지속적 통합(CI), 지속적 배포(CD), 지속적 테스트(CT)라는 데브옵스의 기본 개념에 QA 프로세스 및 보고 대시보드를 결합하여 동일한 파이프라인에 통합합니다.

      1. Plan:

        • 계획 단계에서는 소프트웨어의 품질 보증(QA)에 관련된 작업들을 계획하고 일정을 수립합니다. 이 단계에서는 QA 활동 및 테스트 전략을 수립합니다.

        • 테스트 계획 및 관리 도구: TestRail, HP ALM, Zephyr

        • 이슈 및 결함 관리 도구: Jira, Redmine, Bugzilla

      2. Automate:

        • 자동화 단계에서는 테스트를 자동화하는데 초점을 둡니다.

        • 자동화된 테스트는 반복적이고 일관된 테스트를 가능하게 하며, 개발 및 품질 보증 과정을 가속화합니다.

        • 테스트 자동화 도구: Selenium, Appium, TestComplete

        • CI/CD 도구: Jenkins, GitLab CI/CD, CircleCI

      3. Package:

        • 패키지 단계에서는 소프트웨어를 배포 가능한 형태로 패키징하고 관리합니다. 이 단계에서는 배포를 위한 필요한 자원들을 포함하고 표준화된 프로세스를 따릅니다.

        • 소프트웨어를 컨테이너와 같은 배포 가능한 단위로 패키징하여 테스트할 수 있도록 준비합니다.

        • 컨테이너 오케스트레이션: Docker, Kubernetes

        • 빌드 및 배포 도구: Maven, Gradle, Ansible

      4. Test:

        • 테스트 단계에서는 자동화된 테스트 및 수동 테스트를 실행하여 소프트웨어의 기능적 및 비기능적 요구 사항을 확인합니다.

        • 시스템이 예상대로 작동하는지를 확인하고, 발견된 결함을 식별하여 수정합니다.

        • 기능 테스트 도구: pytest, JUnit, NUnit

        • 성능 테스트 도구: JMeter, Gatling, Locust

      5. Release:

        • 테스트한 소프트웨어를 프로덕션 또는 스테이징 환경에 배포합니다.

        • 릴리스 단계에서는 테스트를 통과한 소프트웨어를 릴리스합니다.

        • 배포 및 롤백 전략을 수립하고 실제 운영 환경으로 소프트웨어를 배포합니다.

        • 릴리스 관리 도구: Git, GitHub, Bitbucket

        • 배포 자동화 도구: Ansible, Puppet, Chef

      6. Trigger:

        • 트리거 단계에서는 자동화된 테스트 및 배포 프로세스를 트리거하고 이를 관리합니다.

        • 미리 정의된 이벤트 또는 일정에 따라 테스트 및 배포 프로세스를 시작합니다.

          (예) 변경 사항이 발생하면 자동으로 QA 프로세스가 시작됩니다.

        • 불필요한 테스트를 피하면서 제품의 기술적 기능을 검증하는 적절한 테스트 케이스를 생성하는 데 중점을 둡니다.

        • 이벤트/스케줄 기반 트리거 도구: Jenkins, GitLab CI/CD, CircleCI

      7. Execute:

        • 실행 단계는 테스트 계획을 실행하고, 테스트 결과를 분석하여 결함을 식별하고 문제를 해결합니다.

        • 이 단계에서는 이전에 설정한 자동화된 테스트를 실행하고, 결과를 평가하여 소프트웨어의 품질을 확인합니다.

        • 모니터링 및 로깅 도구: Prometheus, Grafana, ELK Stack

        • 이슈 및 결함 관리 도구: Jira, Redmine, Bugzilla

      8. Report:

        • 보고 단계에서는 QA 결과 및 배포 상태에 대한 보고서를 생성하고 공유합니다.

        • 분석 및 개선을 위해 테스트 결과, 배포 상태 및 품질 지표에 대한 보고서를 생성합니다.

        • 전체 프로젝트에 대한 스냅샷과 분석결과를 액세스할 수 있도록 지원합니다.

        • 이를 통해 팀은 품질에 대한 투명성을 유지하고 지속적으로 향상시킬 수 있습니다.

        • 테스트 결과 및 메트릭스 보고 도구: TestRail, HP ALM, Grafana

      자동화 테스트는 QAOps 환경에 필수적입니다.

      그러나 자동화 프레임워크를 구축하기 전에 QA 전문가는 제품의 목표, 사양 및 기능을 더 잘 이해하기 위해 제품을 자세히 연구해야 합니다.

      분석이 완료되면 QA 팀은 작업 중인 제품의 단계에 따라 어떤 테스트를 먼저 자동화할 수 있는지 결정할 수 있습니다.

      그런 다음 제품의 목표에 맞게 자동화된 테스트를 수행하여 시간을 절약하고 테스트 데이터의 관련성을 높일 수 있습니다.


      마무리

      이제 QA Ops Engineer는 무슨 일을 하는지 정리가 됩니다.

      Devps (CI/CD)를 운영환경에서 배포 자동화 형상관리를 개발하고 운영하는 업무입니다.

      기존의 QA 업무가 소프트웨어 서비스 품질을 중심이었다면 QA Ops는 인프라 운영과 배포까지 함께 수행하는 것입니다.

      아무래도 개발 언어를 이용한 개발 경험과 인프라 운영 경험이 필요합니다.

      이 글을 마무리하면서 AI 시대에 소프트웨어에 품질에 대한 QA의 자세에 대해 더욱 생각해 보게 됩니다.


      출처

      https://fortegrp.com/insights/what-is-qaops/

      https://www.linkedin.com/pulse/what-qaops-mesut-kilicarslan/

      https://www.softwaretestingmaterial.com/qaops/

      https://www.lambdatest.com/blog/guide-to-implement-qaops-framework/

      댓글 0

      DEVOTEE를 활성화 시키면
      지금 작성한 댓글에 AI가 댓글을 달아줍니다.

      SSunny 님의 최신 블로그

      더보기

      DEVOTEE 추천 블로그

      동영상 기고하기