이 책은 스마트베어(Smartbear) 사의 UI 자동화 도구인 'TestComplete'을 중심으로 구성되어 있다. 그렇기 때문에 TestComplete과 관련 없는 사람이라면 이 책은 하등의 도움이 안 된다고 생각할 수도 있다. 하지만 필자는 단순히 자동화 도구의 기능 설명만을 담는 것이 아닌 자동화 대상을 중심으로 실무에서 느꼈던 난관이나 노하우 등을 언급하면서 제한적이지만 두루 사용되고 있는 Web Browser, Mobile Android/iOS, Sap, Salesforce 등에 대한 자동화 경험을 함께 설명하고 있다. 이 책을 통해 단순히 기능 학습만이 아닌 자동화 엔지니어들이 가졌던 경험을 배우고 자동화 적용 사례를 통해 본인이 가졌던 자동화에 대한 시야를 넓힐 수 있다.
Contents
이 책을 내며...
들어가며...
Chapter 01 SW 테스트 자동화의 정의
1.1 SW 테스트
1.2 SW 테스트 자동화
1.3 수동 테스트 자동화 시 보완점
1.3.1 자동화 테스트에 적합한 시나리오
1.3.2 자동화 테스트에 적합한 테스트 케이스
Chapter 02 TestComplete 설치 및 구조
2.1 들어가기 전에
2.2 TestComplete 소개
2.3 TestComplete 구동 환경
2.3.1 지원되는 운영체제
2.3.2 구동 환경
2.4 TestComplete 설치
2.4.1 임시 버전(Trial Version) 다운로드
2.4.2 TestComplete 설치
2.5 TestComplete의 구조
2.5.1 Project Explorer panel
2.5.2 Workspace panel
2.5.3 Test Visualizer panel
Chapter 03 TestComplete의 기본 기능
3.1 들어가기 전에
3.2 스크립트 생성 및 실행
3.2.1 스크립트 구성
3.2.2 스크립트 생성
3.2.3 스크립트 실행
3.2.4 스크립트 예제
3.3 스크립트 편집 단축 버튼
3.3.1 스크립트 단축 버튼
3.3.2 툴바 단축 버튼
3.4 스크립트 마우스 우클릭 기능
3.4.1 스크립트 실행 기능
3.4.2 오브젝트 수정 기능
3.4.3 스크립트 수정 기능
3.4.4 오퍼레이션 설정 기능
3.4.5 패널 설정 기능
Chapter 04 오퍼레이션(Operations)
4.1 들어가기 전에
4.2 오퍼레이션의 종류
4.3 Test Actions
4.3.1 On-Screen Action
4.3.2 Run TestedApp
4.3.3 Menu Action
4.3.4 Process Action
4.3.5 Run Keyword Test
4.3.6 Run Script Routine
4.3.7 Run Test
4.3.8 Run Code Snippet
4.3.9 Call Object Method
4.3.10 Find Object
4.3.11 If Object
4.3.12 Image Based Action
4.4 Logging
4.4.1 Log Message
4.4.2 Append Log Folder / Pop Log Folder
4.4.3 Post Screenshot
4.4.4 Log Attributes
4.5 Web
4.5.1 Run Browser
4.5.2 Navigate
4.5.3 If Browser
4.5.4 Browser Loop
4.5.5 Run Virtual Browser
4.5.6 Virtual Browser Loop
4.5.7 Remote Browser Loop
4.5.8 Set Virtual Browser Orientation
4.6 Checkpoints
4.6.1 Checkpoint Wizard
4.6.2 XML Checkpoint
4.6.3 File Checkpoint
4.6.4 Property Checkpoint
4.6.5 Excel Checkpoint
4.6.6 Web Service Checkpoint
4.6.7 Web Accessibility Checkpoint
4.6.8 Web Comparison Checkpoint
4.6.9 Table Checkpoint
4.6.10 Region Checkpoint
4.6.11 Mobile Checkpoint
4.6.12 Database Table Checkpoint
4.6.13 Compare Files Checkpoint
4.6.14 Compare Pictures Checkpoint
4.6.15 Compare Properties Checkpoint
4.7 Mobile
4.7.1 Select Device
4.7.2 Device Touch
4.7.3 Device Key
4.7.4 Set Device Orientation
4.7.5 Install Package
4.7.6 Image Touch
4.7.7 Play Gesture
4.7.8 Device Loop
4.7.9 Run Remote Device
4.8 Statements
4.8.1 If…Then
4.8.2 Else
4.8.3 For Loop
4.8.4 While Loop
4.8.5 Label / Go to Label
4.8.6 Set Variable Value
4.8.7 Stop Execution
4.8.8 Return
4.8.9 Try, Catch, Finally
4.8.10 Group
4.9 Miscellaneous
4.9.1 Comment
4.9.2 Delay
4.9.3 Push Indicator Text
4.9.4 Pop Indicator Text
4.10 Performance
4.11 Data Access
4.11.1 Data-Driven Loop
4.11.2 Load From File
4.11.3 Save to File
4.11.4 Send Request
4.12 Excel
4.12.1 Excel-Add Row
4.12.2 Excel-Read Value
4.12.3 Excel-Write Value
4.12.4 Excel Checkpoint
Chapter 05 공통 기능
5.1 들어가기 전에
5.2 변수(Variable)
5.2.1 변수의 저장 위치
5.2.2 변수의 사용
5.3 NameMapping
5.3.1 On-Screen Action
5.3.2 오브젝트 구분자
5.3.3 오브젝트 값(Value) 수정 방법
5.3.4 오브젝트 접근 방법, XPath & CSS
5.4 One Line Script
5.5 CPU, Memory 성능 체크
Chapter 06 자동화 프로젝트 실무
6.1 들어가기 전에
6.2 Web 브라우저 자동화
6.2.1 테스트 시나리오
6.2.2 자동화 예제
6.2.3 다양한 Login
6.2.4 Data-Driven Loop
6.2.5 Close Browser
6.2.6 If문 활용
6.3 Desktop 프로그램 자동화
6.3.1 테스트 시나리오
6.3.2 자동화 예제
6.3.3 Run TestedApp
6.3.4 Data-Driven Loop(Data Generator)
6.3.5 Close TestedApp
6.3.6 Visualizer의 활용
6.4 Mobile (Android/iOS) 애플리케이션 자동화
6.4.1 테스트 시나리오
6.4.2 Android Appium 설정
6.4.3 Android 모바일 테스트
6.4.4 iOS Appium 설정
6.4.5 모바일 자동화에 대한 견해
Chapter 07 랭귀지(Language) 스크립트의 활용
7.1 들어가기 전에
7.2 랭귀지 스크립트 관련 메뉴
7.2.1 프로젝트 생성 시
7.2.2 Run Script Routine
7.2.3 컨버팅(Convert to Script)
7.3 랭귀지 스크립트의 활용 예시
7.3.1 보안 숫자(문자) 클릭
7.3.2 Database 접속
7.3.3 Frame 보안 해제
Chapter 08 유용한 기능들
8.1 들어가기 전에
8.2 젠킨스(Jenkins)를 활용한 테스트 실행 및 관리
8.3 SAP 테스트 자동화
8.3.1 테스트 시나리오
8.3.2 자동화 예제
8.3.3 OCR Action
8.3.4 Keys
8.4 Salesforce 테스트 자동화
8.4.1 테스트 시나리오
8.4.2 자동화 예제
8.4.3 NameMapping 수정
8.4.4 Wait Property
8.5 테스트 실행 시 동영상 녹화 기능
에필로그
찾아보기
Author
김환성,최유란
소프트웨어 QA로서 직무를 상당 기간 지속했고, 이후 자동화 엔지니어로서 수많은 프로젝트를 수행했다. 지금은 QA의 마인드를 바탕으로 효율적인 자동화 구축에 힘쓰며 맡은 프로젝트 족족 성공적으로 마무리하고 있다. 지금껏 증권업, 보험업, 웹 콘텐츠, 결제서비스, 의료기기 소프트웨어 등에 걸쳐 자동화 구축을 경험했고, 지금은 (주)빗썸코리아에서 자동화를 담당하고 있다. 저서로는 〈UI 테스트 자동화〉가 있다.
소프트웨어 QA로서 직무를 상당 기간 지속했고, 이후 자동화 엔지니어로서 수많은 프로젝트를 수행했다. 지금은 QA의 마인드를 바탕으로 효율적인 자동화 구축에 힘쓰며 맡은 프로젝트 족족 성공적으로 마무리하고 있다. 지금껏 증권업, 보험업, 웹 콘텐츠, 결제서비스, 의료기기 소프트웨어 등에 걸쳐 자동화 구축을 경험했고, 지금은 (주)빗썸코리아에서 자동화를 담당하고 있다. 저서로는 〈UI 테스트 자동화〉가 있다.