간편결제, 신용카드 청구할인
인터파크 롯데카드 5% (25,650원)
(최대할인 10만원 / 전월실적 40만원)
북피니언 롯데카드 30% (18,900원)
(최대할인 3만원 / 3만원 이상 결제)
NH쇼핑&인터파크카드 20% (21,600원)
(최대할인 4만원 / 2만원 이상 결제)
Close

Selenium을 활용한 테스트 자동화 : W3C 표준 웹드라이버로 만드는 테스트 스크립트』

원제 : Selenium WebDriver 3 Practical Guide - Second Edition
소득공제

2013년 9월 9일 이후 누적수치입니다.

판매지수 22
?
판매지수란?
사이트의 판매량에 기반하여 판매량 추이를 반영한 인터파크 도서에서의 독립적인 판매 지수입니다. 현재 가장 잘 팔리는 상품에 가중치를 두었기 때문에 실제 누적 판매량과는 다소 차이가 있을 수 있습니다. 판매량 외에도 다양한 가중치로 구성되어 최근의 이슈도서 확인시 유용할 수 있습니다. 해당 지수는 매일 갱신됩니다.
Close
공유하기
정가

30,000원

  • 27,000 (10%할인)

    1,500P (5%적립)

할인혜택
적립혜택
  • I-Point 적립은 마이페이지에서 직접 구매확정하신 경우만 적립 됩니다.
추가혜택
배송정보
  • 11/29(화) 이내 발송 예정  (서울시 강남구 삼성로 512)
  • 무료배송
주문수량
감소 증가

책소개

셀레늄 3에서 개선된 점을 살펴보고 셀레늄에서 자바 8 API를 활용하는 방법을 알아본다. 기본 사용법부터 조금 더 복잡한 사용자 액션까지 설명한 후, 리모트 웹드라이버와 셀레늄 그리드로 원격지의 브라우저에서 테스트를 실행하는 방법, Appium을 사용한 모바일 테스트 방법 등을 살펴본다. TestNG로 데이터 주도 테스트를 수행하는 방법도 설명한다.

출판사 서평

◈ 이 책에서 다루는 내용 ◈

◆ 셀레늄 3 소개 및 업데이트된 기술 비교
◆ 다양한 모바일과 데스크톱 브라우저 플랫폼에서의 셀레늄 3 사용 방법
◆ 드래그 앤 드롭 같은 고급 액션과 웹 페이지의 액션 빌더 사용 방법
◆ 자바 8 API를 셀레늄 3와 함께 사용하는 방법
◆ 리모트 웹드라이버의 개념과 사용 방법
◆ 셀레늄 그리드로 크로스 브라우저 테스트와 분산 테스트 실행
◆ 액션 API로 다양한 키보드와 마우스 액션 수행

◈ 이 책의 대상 독자 ◈

웹 애플리케이션 테스트 스위트 자동화를 만들려는 품질 보증/테스트 전문가, 테스트 엔지니어, 소프트웨어 개발자, 웹 애플리케이션 개발자에게 완벽한 안내서다. 선행학습으로 자바 프로그래밍에 대한 기본적인 이해가 필요하지만 웹드라이버나 셀레늄에 대한 지식은 없어도 된다. 이 책을 다 읽고 나면 테스트 자동화 작성에 필요한 웹드라이버의 지식을 충분히 쌓을 수 있을 것이다.

◈ 이 책의 구성 ◈

1장, ‘웹드라이버와 웹 엘리먼트’에서는 셀레늄의 개념과 기능을 먼저 살펴본 후, 웹드라이버가 웹 페이지를 인식하는 방법으로 빠르게 넘어간다. 웹드라이버의 웹 엘리먼트에 대해 설명하고, 웹 페이지의 웹 엘리먼트를 지정해 기본적인 액션을 수행하는 방법을 알아본다.
2장, ‘웹 브라우저를 지원하는 다양한 웹드라이버’에서는 FirefoxDriver와 IEDriver, ChromeDriver 같은 다양한 웹드라이버 구현체를 설명한다. 헤드리스모드, 모바일 에뮬레이션, 사용자 프로필 사용 등으로 브라우저 테스트 환경을 설정하는 방법을 살펴본다.
3장, ‘자바8 기능 사용’에서는 웹 엘리먼트 리스트를 스트림 API나 람다 표현식 같은 자바8의 새로운 기능으로 다루는 방법을 살펴본다.
4장, ‘웹드라이버 기능 알아보기’에서는 웹 페이지 스크린샷 찍기, 자바스크립트 실행, 쿠키 다루기, 윈도우 프레임 다루기 등의 웹드라이버 고급 기능을 알아본다.
5장, ‘고급 사용자 인터랙션’에서는 웹드라이버의 고급 기능을 더 자세히 알아본다. 하나의 프레임에 있는 엘리먼트를 드래그 앤 드롭으로 다른 프레임으로 옮기기, 웹 엘리먼트에서 오른쪽 버튼 클릭 같은 흥미로운 예제를 다룬다.
6장, ‘웹드라이버 이벤트의 이해’에서는 웹드라이버 관점에서의 이벤트 처리를 살펴본다. 웹 엘리먼트의 값 변경, 브라우저의 뒤로 가기, 스크립트 실행 완료와 같은 이벤트를 살펴본다.
7장, ‘리모트 웹드라이버 살펴보기’에서는 리모트 웹드라이버와 셀레늄 단독 서버를 사용해 원격 기기에서 테스트를 실행하는 방법을 살펴본다.
8장, ‘셀레늄 그리드’에서는 셀레늄에서 가장 중요하고 흥미로운 기능인 셀레늄 그리드를 살펴본다.
9장, ‘페이지 객체 패턴’에서는 페이지 객체 패턴으로 잘 알려진 설계 패턴을 다룬다.
10장, ‘Appium을 이용한 iOS와 안드로이드 테스트’에서는 iOS와 안드로이드 플랫폼에서 Appium을 이용해 자동화 테스트 스크립트에서 웹드라이버를 사용하는 방법을 살펴본다.
11장, ‘TestNG로 수행하는 데이터 주도 테스트’에서는 TestNG로 데이터 주도 테스트 기법을 살펴본다.

목차

1장. 웹드라이버와 웹 엘리먼트 소개
__셀레늄 테스트 도구
____셀레늄 웹드라이버
____셀레늄 서버
____셀레늄 IDE
__셀레늄 2와 셀레늄 3의 차이점
____브라우저 제어
____더 나은 API
____개발자 지원과 고급 기능
____Appium으로 모바일 앱 테스트
__이클립스에서 메이븐, TestNG로 자바 프로젝트 설정
__웹 엘리먼트
__웹 페이지에서 웹 엘리먼트 지정
____findElement( ) 메서드
____findElements( ) 메서드
____개발자 도구로 엘리먼트 검사
______파이어폭스로 엘리먼트와 페이지 검사
______크롬 개발자 도구로 페이지와 엘리먼트 검사
____By 지정자 사용하기
______By.id( ) 메서드
______By.name( ) 메서드
______By.className 메서드
______By.linkText 메서드
______By.partialLinkText( ) 메서드
______By.tagName( ) 메서드
______By.xpath( ) 메서드
______By.cssSelector( ) 메서드
__웹 엘리먼트에서 할 수 있는 여러 가지 동작
____엘리먼트 속성 가져오기
______getAttibute( ) 메서드
______getText( ) 메서드
______getCssValue( ) 메서드
______getLocation( ) 메서드
______getSize( ) 메서드
______getTagName( ) 메서드
____웹 엘리먼트에서 액션 실행
______sendKeys( ) 메서드
______clear( ) 메서드
______submit( ) 메서드
____웹 엘리먼트의 상태 확인
______isDisplayed( ) 메서드
______isEnabled( ) 메서드
______isSelected( ) 메서드
__요약
__질문
__더 살펴보기

2장. 웹 브라우저를 지원하는 다양한 웹드라이버
__파이어폭스 드라이버
____게코 드라이버 사용
____헤드리스 모드 사용
____파이어폭스 프로필
______파이어폭스 확장 기능 추가
______프로필 저장과 불러오기
____파이어폭스 환경 설정
______환경 설정 다루기
______고정 설정의 이해
__크롬 드라이버
____헤드리스 모드 사용
____모바일 에뮬레이션으로 모바일 웹 애플리케이션 테스트
____크롬 확장 기능 추가
__인터넷 익스플로러 드라이버
____IE 브라우저를 사용하는 테스트 스크립트 작성
____IEDriver 기능 이해
__Edge 드라이버
____Edge 브라우저를 사용하는 테스트 스크립트 작성
__사파리 드라이버
____사파리용 테스트 스크립트 작성
__요약
__질문
__더 살펴보기

3장. 자바 8 기능 사용
__자바 8 스트림 API 소개
____Stream.filter( )
______Stream.sort( )
______Stream.map( )
______Stream.collect( )
______Stream.min( )과 Stream
______Stream.count( )
__셀레늄 웹드라이버와 스트림 API 사용
____웹 엘리먼트 필터링과 개수 세기
____엘리먼트 속성 필터링
____Map 함수로 엘리먼트의 텍스트 값 추출
____필터링한 엘리먼트에 작업 실행
__요약
__질문
__더 살펴보기

4장. 웹드라이버 기능 알아보기
__스크린샷 캡처
__윈도우 창과 iFrame 지정
____윈도우 창 전환
____프레임 간 전환
____알림 창 다루기
__브라우저 내비게이션 제어
__로딩 중인 웹 엘리먼트 기다리기
____묵시적 대기 시간
____명시적 대기 시간
__쿠키 핸들링
__요약
__질문
__더 살펴보기

5장. 고급 사용자 인터랙션
__액션을 만들어 실행하기
__마우스 인터랙션
____moveByOffset 액션
____click 액션
____웹 엘리먼트를 사용하는 click 액션
____clickAndHold 액션
____웹 엘리먼트를 사용하는 clickAndHold 액션
____release 액션
____웹 엘리먼트를 사용하는 release 액션
____moveToElement 액션
____dragAndDropBy 액션
____dragAndDrop 액션
____doubleClick 액션
____웹 엘리먼트를 사용하는 doubleClick 액션
____웹 엘리먼트를 사용하는 contextClick 액션
____현재 위치에서 contextClick 액션
__키보드 인터랙션
____keyDown, keyUp 액션
____sendKeys( ) 메서드
__요약
__질문
__더 살펴보기

6장. 웹드라이버 이벤트의 이해
__eventFiringWebDriver와 eventListener 클래스
__EventListener 인스턴스 생성
____WebDriverEventListener 인터페이스 구현
____AbstractWebDriverEventListener 상속 구현
____WebDriver 인스턴스 생성
____EventFiringWebDriver와 EventListener 인스턴스 생성
____EventFiringWebDriver에 EventListener 등록
____이벤트 발생과 확인
____여러 개의 EventListener 등록
__WebDriver에서 제공하는 이벤트 리스너
____WebElement 값 변경 이벤트
____WebElement 클릭 이벤트
____WebElement 검색 jator 이벤트
____브라우저 뒤로 가기 이벤트
____브라우저 앞으로 가기 이벤트
____navigateTo 이벤트
____스크립트 실행 이벤트
____예외 처리
____EventFiringWebDriver에 등록한 EventListener 제거
____접근성 테스트 수행
____페이지 성능 지표 측정
__요약
__질문
__더 살펴보기

7장. 리모트 웹드라이버 살펴보기
__리모트 웹드라이버 소개
____셀레늄 단독 서버
______셀레늄 단독 서버 다운로드
______서버 실행
____리모트 웹드라이버 클라이언트
______리모트 웹드라이버 서버를 위한 테스트 스크립트 수정
______리모트 웹드라이버를 통한 파이어폭스 사용법
______리모트 웹드라이버를 통한 인터넷 익스플로러 사용법
__JSON 와이어 프로토콜
__요약
__질문
__더 살펴보기

8장. 셀레늄 그리드
__셀레늄 그리드 알기
__허브의 역할
__노드의 역할
__셀레늄 그리드를 위한 테스트 스크립트로 수정
____미등록 환경에 대한 요청
____노드가 작업 중일 때 요청 큐잉하기
____조건에 맞는 노드가 두 개인 경우
__셀레늄 그리드 설정
____노드 설정 파라미터
______지원 브라우저 설정
______노드 타임아웃 설정
______브라우저 인스턴스의 생성 제한 설정
______노드의 자동 등록
______노드의 상태 체크
______노드의 등록 해제
______브라우저 타임아웃 설정
____허브 설정 파라미터
____테스트 환경이 준비될 때까지 대기하기
____CapabilityMatcher 사용자 정의
____새로운 세션을 만들 때 사용하는 WaitTimeout
____셀레늄 그리드 환경을 설정하는 다른 방법
__클라우드 기반 셀레늄 그리드에서 크로스 브라우저 테스트
__요약
__질문
__더 살펴보기

9장. 페이지 객체 패턴
__워드프레스 블로그를 대상으로 테스트 케이스 만들기
____테스트 케이스 1: 새로운 글 등록
____테스트 케이스 2: 글 지우기
____테스트 케이스 3: 워드프레스 블로그의 글 개수 세기
__페이지 객체 패턴
____@FindBy 어노테이션
____PageFactory의 활용
__페이지 객체 설계를 위한 고려 사항
____서비스 제공자 관점에서 웹 페이지 바라보기
____부가 서비스 제공
____페이지 객체에서 또 다른 페이지 객체의 사용
______AddNewPost 페이지 객체
______AllPostsPage 페이지 객체
____사용자 액션이 아닌 서비스로 접근하는 메서드 활용법
____초기화 이후의 웹엘리먼트 식별
____페이지에 특화된 부분 분리
____Loadable 컴포넌트
__워드프레스 테스트 실습
____테스트에 사용하는 페이지 객체 설명
______AdminLoginPage
______AllPostsPage
______AddNewPostPage
______EditPostPage
______DeletePostPage
____테스트 케이스 작성
______게시글 추가 테스트
______게시글 수정 테스트
______게시글 삭제 테스트
______게시글 세기 테스트
__요약
__질문
__더 살펴보기

10장. Appium을 이용한 iOS와 안드로이드 테스트
__다양한 형태의 모바일 애플리케이션
__사용 가능한 소프트웨어 도구
__Appium을 이용한 iOS와 안드로이드 테스트 자동화
____iOS 애플리케이션 테스트 자동화
____안드로이드 애플리케이션 테스트 자동화
____Appium 사용준비
______Xcode 설정
______안드로이드 SDK 설치
______안드로이드 에뮬레이터 생성
____Appium 설치
____iOS 자동화
____안드로이드 자동화
____클라우드 기반의 실제 기기 테스트
__요약
__질문
__더 살펴보기

11장. TestNG로 수행하는 데이터 주도 테스트
__데이터 주도 테스트
__스위트 파라미터를 사용한 파라미터화 테스트
__데이터 제공자와 파라미터화 테스트
____CSV 파일에서 데이터 읽어오기
____엑셀 파일에서 데이터 읽어오기
__요약
__질문
__더 살펴보기
연습문제

저자소개

언메시 건데차 [저] 신작알림 SMS신청
생년월일 -

애자일 소프트웨어 개발, 테스트 자동화, 데브옵스 방법론에 16년 이상의 경력이 있으며 애자일, 오픈소스, 데브옵스 에반젤리스트로서 다양한 도구와 기술에 대한 경험이 풍부하다. 최고의 오픈소스와 상용 소프트웨어 도구를 사용해 웹, 모바일 플랫폼, API, CLI 애플리케이션에서 지속적 통합과 배포 파이프라인을 통해 유지보수 가능하면서 반복 가능한 테스트 자동화 솔루션 구축에 대한 경험이 많다. 팩트출판사에서 출간한 『Selenium 웹드라이버 테스트 자동화』(에이콘, 2014)와 『Learning Selenium Testing Tools with Python』(2014)의 저자기도 하다.

사티야 아바사알라 [저] 신작알림 SMS신청
생년월일 -

개발과 테스트 자동화 분야에 풍부한 경험을 가지고 있다. 전산학 엔지니어로 지금까지 수년간 웹드라이버를 사용해 자동화 프레임워크를 구축해왔다. 오라클과 야후, VMWare, REA 그룹 같은 다양하고 규모가 큰 소프트웨어 회사에서 일한 경력이 있다. 서비스 지향 아키텍처(Service Oriented Architectural) 설계와 비즈니스 인텔리전스(Business Intelligence)에도 많은 관심이 있는데, 오라클에서 인증한 서비스 지향 아키텍처 인프라 설계 전문가인 동시에 비즈니스 인텔리전스 구축 전문가이기도 하다.

김유성 [역] 신작알림 SMS신청
생년월일 -

대표 역서로 『Selenium을 활용한 테스트 자동화』가 있다.

이 상품의 시리즈

전공도서/대학교재 분야에서 많은 회원이 구매한 책

    리뷰

    0.0 (총 0건)

    100자평

    작성시 유의사항

    평점
    0/100자
    등록하기

    100자평

    0.0
    (총 0건)

    판매자정보

    • 인터파크도서에 등록된 오픈마켓 상품은 그 내용과 책임이 모두 판매자에게 있으며, 인터파크도서는 해당 상품과 내용에 대해 책임지지 않습니다.

    상호

    (주)교보문고

    대표자명

    안병현

    사업자등록번호

    102-81-11670

    연락처

    1544-1900

    전자우편주소

    callcenter@kyobobook.co.kr

    통신판매업신고번호

    01-0653

    영업소재지

    서울특별시 종로구 종로 1(종로1가,교보빌딩)

    교환/환불

    반품/교환 방법

    ‘마이페이지 > 취소/반품/교환/환불’ 에서 신청 또는 1:1 문의 게시판 및 고객센터(1577-2555)에서 신청 가능

    반품/교환가능 기간

    변심 반품의 경우 출고완료 후 6일(영업일 기준) 이내까지만 가능
    단, 상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내

    반품/교환 비용

    변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
    상품이나 서비스 자체의 하자로 인한 교환/반품은 반송료 판매자 부담

    반품/교환 불가 사유

    ·소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
    (단지 확인을 위한 포장 훼손은 제외)

    ·소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
    예) 화장품, 식품, 가전제품(악세서리 포함) 등

    ·복제가 가능한 상품 등의 포장을 훼손한 경우
    예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집

    ·시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우

    ·전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우

    상품 품절

    공급사(출판사) 재고 사정에 의해 품절/지연될 수 있음

    소비자 피해보상
    환불지연에 따른 배상

    ·상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은 소비자분쟁해결 기준 (공정거래위원회 고시)에 준하여 처리됨

    ·대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리함

    (주) 인터파크 안전결제시스템 (에스크로) 안내

    (주)인터파크의 모든 상품은 판매자 및 결제 수단의 구분없이 회원님들의 구매안전을 위해 안전결제 시스템을 도입하여 서비스하고 있습니다.
    결제대금 예치업 등록 : 02-006-00064 서비스 가입사실 확인

    배송안내

    • 교보문고 상품은 택배로 배송되며, 출고완료 1~2일내 상품을 받아 보실 수 있습니다.

    • 출고가능 시간이 서로 다른 상품을 함께 주문할 경우 출고가능 시간이 가장 긴 상품을 기준으로 배송됩니다.

    • 군부대, 교도소 등 특정기관은 우체국 택배만 배송가능합니다.

    • 배송비는 업체 배송비 정책에 따릅니다.

    • - 도서 구매 시, 1만 원 이상 무료, 1만원 미만 2천 원 - 상품별 배송비가 있는 경우, 상품별 배송비 정책 적용