본문으로 이동
메뉴 여닫기
환경 설정 메뉴 여닫기
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.

소프트웨어 테스트 자동화

IT 위키


Software Test Automation
소프트웨어 테스트 케이스 개발, 테스트 수행, 테스트 커버리지 측정 등 소프트웨어 테스트 과정 일부 또는 전체를 수작업이 아닌 자동화된 프로그램을 통해서 수행하는 기법
  • 협의적 개념: 소프트웨어 기능에서 정규 입력에 대한 출력 확인, 오류 검출을 자동화하는 소프트웨어 테스트 기술

테스트 자동화 기술

편집 원본 편집
단계 자동화 기술 설명
설계 명세기반테스트 설계 소프트웨어 명세로부터 테스트 절차, 데이터, 드라이버 등 생성
코드기반테스트 설계 소스로부터 테스트절차, 데이터, 드라이버 등 생성
테스트 관리 테스트계획 수립, 요구사항 및 버그추적 관리 등 지원
구현 정적 분석 프로그램을 수행하지 않고 분석하는 도구
Review 및 Inspection 소스코드 및 설계 문서를 분석해서 가이드라인, 규칙 검사
커버리지 측정 주어진 테스트 케이스에 의해 얼마나 테스트 되었는가 측정
동적 분석 프로그램 수행 중 시스템 상태평가(Memory Leak 등)
성능, 로드, 시뮬레이션 시스템 부하를 생성하고 반응시간, 메모리 사용량 등 측정
구현 테스트 수행 테스트 케이스 자동 수행, 예상결과 비교

테스트 수행 자동화

편집 원본 편집
  • 앱피움: 모바일 테스트용, UIAutomator2 + FacebookWDA
  • UIAutomator2: 안드로이드용
  • FacebookWDA: iOS용
  • Python-UIAutomation-for-Windows: 윈도우용
  • PyAtom: Mac OS용
  • LDTP: 리눅스용
  • 스페로우
  • 코드마인드

테스트 자동화 프레임워크

편집 원본 편집

테스트 자동화 장단점

편집 원본 편집
테스트 자동화 장점 테스트 자동화 단점
  • 반복적 업무 감소
  • 테스트 노력 절감 및 실수 감소
  • 객관적 평가 기준 제공
  • 효율적인 비용으로 유지보수 가능
  • 테스트 자동화 도구의 비용이 고가이며 유지비용 높음
  • 초기 환경 및 테스트 설정에 많은 시간, 비용 소요
  • 도구에 의해 생성된 테스트 자산 유지 비용 소요
  • 테스트 스크립트 유지보수 어려움
  • 정보관리기술사 121회 3교시