자동화 테스트 란 무엇입니까?
수동 테스트 는 테스트 단계를 신중하게 실행하는 컴퓨터 앞에 앉아있는 사람이 수행합니다.
자동화 테스트는 자동화 도구를 사용하여 테스트 케이스를 실행하는 것을 의미합니다.
자동화 소프트웨어는 테스트중인 시스템에 테스트 데이터를 입력하여 예상 결과와 실제 결과를 비교하고 상세한 테스트 보고서를 생성 할 수 있습니다. 테스트 자동화는 돈과 자원에 상당한 투자를 요구합니다.
연속적인 개발 사이클은 같은 테스트 스위트를 반복적으로 실행해야합니다. 테스트 자동화 도구를 사용하면이 테스트 스위트를 기록하고 필요에 따라 다시 재생할 수 있습니다. 테스트 스위트가 자동화되면 사람의 개입이 필요하지 않습니다. 테스트 자동화의 ROI가 향상되었습니다. 자동화의 목표는 테스트 사례를 수동으로 실행하고 수동 테스팅을 모두 제거하지 않아야합니다.
왜 자동 테스트입니까?
자동화 된 소프트웨어 테스트는 다음과 같은 이유로 중요합니다.
- 모든 워크 플로, 모든 필드, 모든 부정적인 시나리오에 대한 수동 테스트는 시간과 비용이 많이 듭니다.
- 수동으로 다국어 사이트를 테스트하는 것은 어렵습니다.
- 자동화는 인간의 개입을 필요로하지 않습니다. 무인 자동화 테스트 (야간)
- 자동화는 테스트 실행 속도를 높입니다.
- 자동화를 통해 테스트 커버리지 향상
- 수동 테스트는 지루하고 오류를 일으킬 수 있습니다.
어떤 테스트 사례를 자동화 할 것인가?
자동화 될 테스트 케이스는 자동화 ROI를 높이기 위해 다음 기준을 사용하여 선택할 수 있습니다.
- 고위험 - 비즈니스 크리티컬 테스트 케이스
- 반복적으로 실행되는 테스트 사례
- 매우 지루하고 수동으로 수행하기 어려운 테스트 케이스
- 시간이 많이 소요되는 테스트 케이스
다음 범주의 테스트 사례는 자동화에 적합하지 않습니다.
- 새로 설계되고 적어도 한 번 수동으로 실행되지 않는 테스트 케이스
- 요구 사항이 자주 변경되는 테스트 사례
- Ad-hoc 기반으로 실행되는 테스트 케이스.
자동화 된 테스트 프로세스 :
자동화 프로세스에서 다음 단계가 수행됩니다.
테스트 도구 선택
테스트 도구 선택은 주로 테스트중인 애플리케이션이 구축 한 기술에 따라 다릅니다. 예를 들어 QTP 는 인포매티카를 지원하지 않습니다. 따라서 QTP는 Informatica 응용 프로그램 을 테스트하는 데 사용할 수 없습니다 . AUT에서 도구의 개념 증명을 실시하는 것이 좋습니다.
자동화 범위 정의
자동화 범위는 테스트중인 응용 프로그램의 영역이며 자동화됩니다. 다음 사항은 범위를 결정하는 데 도움이됩니다.
- 비즈니스에 중요한 기능
- 많은 양의 데이터 가 있는 시나리오
- 응용 프로그램 전반의 공통 기능
- 기술적 타당성
- 비즈니스 구성 요소가 재사용되는 범위
- 테스트 케이스 의 복잡성
- 브라우저 간 테스트에 동일한 테스트 케이스를 사용할 수있는 기능
기획, 설계 및 개발
이 단계에서 다음과 같은 세부 정보가 포함 된 자동화 전략 및 계획을 만듭니다.
- 선택된 자동화 도구
- 프레임 워크 디자인 및 기능
- 범위 내 및 범위를 벗어나는 자동화 항목
- 자동화 테스트 베드 준비
- 스크립팅 및 실행 일정 및 타임 라인
- 결과물 자동화 테스트 제공
테스트 실행
자동화 스크립트는이 단계에서 실행됩니다. 스크립트는 실행하도록 설정되기 전에 입력 테스트 데이터가 필요합니다. 일단 실행되면 자세한 테스트 보고서를 제공합니다.
실행은 자동화 도구를 직접 사용하거나 자동화 도구를 호출하는 테스트 관리 도구를 통해 수행 할 수 있습니다.
예 : 품질 센터는 테스트 관리 도구이며 차례로 자동화 스크립트 실행을 위해 QTP를 호출합니다. 스크립트는 단일 시스템 또는 시스템 그룹에서 실행할 수 있습니다. 밤 시간에 실행하면 시간을 절약 할 수 있습니다.
유지
연속 기능으로 테스트중인 시스템에 새로운 기능이 추가됨에 따라 각 릴리스주기마다 자동화 스크립트를 추가, 검토 및 유지 관리해야합니다. 자동화 스크립트의 효율성을 높이려면 유지 관리가 필요합니다.
자동화 프레임 워크
프레임 워크는 자동화 지침의 집합으로
- 테스트의 일관성 유지
- 테스트 구조 개선
- 최소 코드 사용
- 코드 유지 관리가 적다.
- 재사용 가능성 개선
- 비 기술적 테스터가 코드에 관련 될 수 있습니다.
- 도구를 사용하는 교육 기간을 줄일 수 있습니다
- 적절한 곳에 데이터를 포함시킵니다.
자동화 소프트웨어 테스팅에는 네 가지 유형의 프레임 워크가 사용됩니다.
- 데이터 기반 자동화 프레임 워크
- 키워드 기반 자동화 프레임 워크
- 모듈 형 자동화 프레임 워크
- 하이브리드 자동화 프레임 워크
자동화 도구 모범 사례
자동화의 ROI를 최대화하려면 다음을 준수하십시오.
- 자동화의 범위는 프로젝트 시작 전에 세부적으로 결정되어야합니다. 이것은 자동화의 기대를 설정합니다.
- 적절한 자동화 도구를 선택하십시오 : 인기도에 따라 도구를 선택하면 안되지만 자동화 요구 사항에 맞습니다.
- 적절한 프레임 워크 선택
- 스크립팅 표준 - 자동화 스크립트를 작성하는 동안 표준을 따라야합니다. 그들 중 일부는 -
- 균일 한 스크립트, 주석 및 코드 들여 쓰기 만들기
- 적절한 예외 처리 - 응용 프로그램의 시스템 오류 또는 예기치 않은 동작에서 오류를 처리하는 방법
- 테스터가 이해할 수 있도록 오류 로깅을 위해 사용자 정의 메시지를 코딩하거나 표준화해야합니다.
- 측정 기준 - 수동 작업과 자동화 노력을 비교하여 성공 여부를 결정할 수는 없지만 다음 측정 항목을 포착합니다.
- 발견 된 결함 비율
- 매 릴리스주기마다 자동화 테스트에 필요한 시간
- 최소 출시 시간
- 고객 만족도
- 생산성 향상
위의 지침을 따르면 자동화가 성공적으로 이루어질 수 있습니다.
자동화 테스트의 이점
다음은 자동화 된 테스트의 이점입니다.
- 수동 테스트보다 70 % 빠름
- 응용 기능의 테스트 범위 확대
- 결과에서 신뢰할 수있는
- 일관성 보장
- 시간과 비용 절약
- 정확도 향상
- 실행하는 동안 인간 개입은 필요하지 않습니다.
- 효율성 향상
- 테스트 실행 속도 향상
- 재사용 가능한 테스트 스크립트
- 자주 자주 테스트하십시오.
- 자동화를 통해 실행주기를 늘릴 수 있습니다.
- 조기 시장 출시
자동화 될 수있는 다양한 종류의 소프트웨어 테스팅
- Smoke Testing
- Unit Testing
- Integration Testing
- Functional Testing
- Keyword Testing
- Regression Testing
- Data Driven Testing
- Black Box Testing
자동화 도구를 선택하는 방법?
올바른 도구를 선택하는 것은 까다로운 작업이 될 수 있습니다. 다음 기준에 따라 요구 사항에 가장 적합한 도구를 선택할 수 있습니다.
- 환경 지원
- 사용의 용이성
- 데이터베이스 테스트
- 객체 식별
- 이미지 테스팅
- 오류 복구 테스트
- 객체 매핑
- 사용 된 스크립팅 언어
- 기능 테스트, 테스트 관리, 모바일 등 다양한 유형의 테스트 지원
- 여러 테스트 프레임 워크 지원
- 자동화 소프트웨어 스크립트를 디버그하기 쉽습니다.
- 어떤 환경에서도 물체를 인식하는 능력
- 광범위한 테스트 보고서 및 결과
- 선택한 도구의 교육 비용 최소화
도구 선택은 자동화하기 전에 해결해야 할 가장 큰 과제 중 하나입니다. 첫째, 요구 사항을 확인하고 다양한 도구와 기능을 탐색하고 도구에서 기대치를 설정하고 개념 증명을 얻으십시오.
자동화 테스트 도구
시장에서 사용할 수있는 기능 및 회귀 테스트 도구가 많이 있습니다. 전문가가 인증 한 5 가지 도구가 있습니다.
트리 센티스
Tricentis 는 업계 최고의 자동화 테스트 플랫폼이며 DevOps에 대한 소프트웨어 테스팅 재발 명으로 인정 받고 있습니다. Tricentis는 세 가지 주요 애널리스트 보고서에서 "리더"지위를 획득 한 유일한 공급 업체입니다.
풍모:
- 위험 기반 테스트
- 스크립트리스 엔드 - 투 - 엔드 테스트 자동화
- API, BI, 모바일, 크로스 브라우저, RPA 및 기타 자동화 테스트 유형 지원
- 업계에서 가장 광범위한 기술 지원
mabl
mabl 은 딜리버리 파이프 라인과 통합 된 스크립트 리스 엔드 투 엔드 테스트 자동화를 제공하므로 앱 개선에 집중할 수 있습니다.
풍모:
- 독점적 인 기계 학습 모델은 자동으로 애플리케이션 문제를 식별하고 나타냅니다.
- UI 변경시 테스트가 자동으로 수정됩니다.
- 모든 빌드에서 자동 회귀 분석
셀레니움
회귀 테스트에 사용되는 소프트웨어 테스트 도구입니다. 회귀 테스트를위한 재생 및 녹음 기능을 제공하는 오픈 소스 테스트 도구입니다. 셀레늄 IDE는 모질라 파이어 폭스 웹 브라우저를 지원합니다.
- Java, Ruby, RSpec, Python, C # 등과 같은 다른 언어로 기록 된 스크립트를 내보낼 수있는 조항을 제공합니다.
- JUnit 및 TestNG와 같은 프레임 워크와 함께 사용할 수 있습니다.
- 한 번에 여러 개의 테스트를 실행할 수 있습니다.
- 공통적 인 셀렌 명령 자동 완성
- 연습 테스트
- ID, 이름, X 경로 등을 사용하여 요소를 식별합니다.
- Ruby 스크립트, HTML 및 기타 형식으로 테스트 저장
- 모든 페이지의 제목을 표시하는 옵션을 제공합니다.
- 그것은 셀렌 사용자 - extensions.js 파일을 지원합니다
- 더 나은 이해와 디버깅을 위해 스크립트 중간에 주석을 삽입 할 수 있습니다.
QTP (Micro Focus UFT)
QTP 는 기능 및 회귀 테스트에 널리 사용되며 모든 주요 소프트웨어 응용 프로그램 및 환경을 처리합니다. 테스트 생성 및 유지 관리를 단순화하기 위해 키워드 기반 테스팅이라는 개념을 사용합니다. 테스터는 애플리케이션에서 직접 테스트 케이스를 작성할 수 있습니다.
- 비전문가가 실제 테스트 케이스에 적응하고 테스트 케이스를 작성하는 것이 더 쉽습니다.
- 개발자의 결함을 철저히 문서화하고 복제함으로써 결함을보다 신속하게 수정합니다.
- 단일 사이트에서 테스트 작성 및 테스트 문서 축소
- 매개 변수화는 WinRunner보다 쉽습니다.
- QTP는 .NET 개발 환경을 지원합니다.
- 그것은 더 나은 객체 식별 메커니즘을 가지고있다.
- ActiveScreen을 사용하여 "Application Under Test"를 사용할 수없는 기존 QTP 스크립트를 향상시킬 수 있습니다.
Rational Functional Tester
자동화 된 기능, 회귀, 데이터 기반 테스트 및 GUI 테스트를 수행 할 수 있는 객체 지향 자동화 기능 테스트 도구입니다. 이 도구의 주요 기능은 다음과 같습니다.
- Java, HTML, NET, Windows, SAP, Visual Basic 등과 같은 광범위한 프로토콜 및 응용 프로그램을 지원합니다.
- 필요에 따라 작업을 기록하고 재생할 수 있습니다.
- Rational Clear Case 및 Rational Team Concert 통합과 같은 소스 제어 관리 도구와 잘 통합됩니다.
- 개발자는 키워드 관련 스크립트를 작성하여 재사용 할 수 있습니다.
- Eclipse Java Developer Toolkit 편집기로 팀이 Eclipse로 Java로 테스트 스크립트를 코드화 할 수 있습니다.
- 프록시 SDK (Java / .NET)를 통해 사용자 정의 컨트롤을 지원합니다.
- 테스트 스크립트의 병렬 개발 및 지리적으로 분산 된 팀의 동시 사용을 가능하게하는 버전 제어를 지원합니다.
WATIR
회귀 테스트를위한 오픈 소스 테스트 소프트웨어입니다. 읽기 및 유지가 쉬운 테스트를 작성할 수 있습니다. Watir은 Windows에서 인터넷 익스플로러 만 지원하며 Watir webdriver는 Chrome, Firefox, IE, Opera 등을 지원합니다.
- 그것은 다른 플랫폼에서 여러 브라우저를 지원합니다
- 독점 공급 업체 스크립트를 사용하는 대신 모든 기능을 갖춘 현대적인 스크립팅 언어 인 Ruby
- 그것은 당신이 개발 한 것과 상관없이 웹 애플리케이션을 지원합니다.
실크 테스트
Silk Test는 기능 및 회귀 테스트를 수행하도록 설계되었습니다. e-business 응용 프로그램의 경우 실크 테스트가 최고의 기능 테스트 제품입니다. 2006 년 볼랜드가 인수 한 Segue Software의 제품입니다. C ++과 마찬가지로 객체 지향 언어입니다. 그것은 객체, 클래스 및 상속의 개념을 사용합니다. 그것의 주요 특징은 포함한다
- 모든 소스 스크립트 파일로 구성됩니다.
- 스크립트 명령을 GUI 명령으로 변환합니다. 동일한 컴퓨터에서 명령은 원격 또는 호스트 컴퓨터에서 실행할 수 있습니다.
- 키 스트로크와 함께 마우스의 움직임을 확인하기 위해 Silktest를 실행할 수 있습니다. 재생 및 기록 방법 또는 설명적인 프로그래밍 방법을 사용하여 대화 상자를 얻을 수 있습니다.
- 테스트중인 어플리케이션의 모든 컨트롤과 윈도우를 객체로 식별하고 각 윈도우의 모든 속성과 속성을 결정합니다
결론
자동화 도구, 테스트 프로세스 및 팀의 올바른 선택은 자동화가 성공하는 데 중요한 역할을합니다. 성공적인 테스트를 위해 수동 및 자동화 방법이 함께 사용됩니다.
'블랙박스 테스트' 카테고리의 다른 글
통합 테스팅 튜토리얼 : 빅뱅, 탑 다운 & 보텀 업 (0) | 2018.11.22 |
---|---|
자동화 된 테스트 vs 수동 테스트 : 차이점 (1) | 2018.11.20 |
초보자를 위한 수동 테스트 자습서 (0) | 2018.11.18 |
STLC - 소프트웨어 테스팅 수명주기(Software Testing Life Cycle) (0) | 2018.11.17 |
V 모델이란 무엇입니까? SDLC 및 STLC를 사용한 사례 연구 (0) | 2018.11.16 |