알라딘

헤더배너
상품평점 help

분류

이름:김유성

최근작
2021년 11월 <Selenium을 활용한 테스트 자동화 2/e>

타입스크립트 마스터 2/e

자바스크립트 생태계는 나날이 발전하고 있고, 자바스크립트가 담당하던 영역은 브라우저를 벗어나 백엔드를 비롯해 다양한 환경을 담당하고 있다. 큰 규모의 자바스크립트 프로젝트도 많아져서 이제는 자바스크립트 개발만 담당하는 별도의 팀도 흔히 볼 수 있다. 언어의 인기만큼이나 만드는 제품의 크기도 커지고 복잡도도 올라가고 있다. 대부분의 스크립트 언어가 가진 장점은 쉽고 빠르게 개발할 수 있다는 점이고, 단점은 쉽게 만들 수 있는 만큼 실수하기도 쉽다는 점이다. 컴파일 타임이나 타입 검사가 없어 빠르게 개발할 수 있지만, 런타임에서 오류를 만나거나 예상치 못한 곳에서 오류가 발생하는 일이 잦다. 게다가 프로젝트 규모가 커지고 프로젝트를 진행하는 개발자가 많아질수록 실수의 여지가 많아지고 관리하기도 어려워진다. 타입스크립트는 마이크로소프트에서 대규모 자바스크립트 개발을 위해 만든 언어로 자바스크립트를 만들어내는 컴파일러다. 자바스크립트를 생성하기 때문에 기존 자바스크립트 라이브러리나 프레임워크를 사용하면서도 강타입을 이용해 객체지향 언어처럼 개발할 수 있다. 새로운 언어나 도구를 도입하려면 지식의 전파가 필요하다. 새로운 프로젝트가 아닌 기존 프로젝트에 변화를 주려면 타입스크립트를 처음 접하는 것으로 시작해서 상당한 학습 비용이 들어가게 된다. 아무쪼록 이 책이 타입스크립트를 도입하는 데 도움이 됐으면 한다.

타입스크립트 실전 프로젝트

백문(百聞)이 불여일타(不如一打). 어떤 기술을 배울 때, 동작하는 예제를 직접 만들어보는 노력은 학습의 지름길이 된다. 이 책은 다양한 예제 프로젝트를 통해 타입스크립트 객체지향 프로그래밍을 비롯해 부트스트랩, 리액트, Vue, 앵귤러와 같은 인기 있는 UI 프레임워크의 사용법과 그래프QL, MEAN 스택을 이용한 서버 개발, 도커를 통한 서버 배포, Socket.IO를 사용한 웹소켓, 파이어베이스와 같은 매니지드 클라우드 서비스의 사용법, TensorFlow.js 등의 다양한 기술을 살펴본다. 이제 웹 서비스를 만드는 일은 단순히 웹 페이지에만 해당되는 이야기가 아니며, 사용자와 상호작용하는 UI를 비롯해 데이터나 API를 제공하는 백엔드 기술을 포함하는 넓은 분야의 개발을 지칭하는 개념으로 자리매김했다. 꾸준히 등장하는 새로운 기술의 동향을 파악하고 기술 도입을 검토해보는 노력은 언제나 필요하며, 대상 분야도 점점 넓어지고 있다. 웹 서비스를 만든다면 인프라를 비롯한 클라우드 서비스 관련 지식도 필요하고 컨테이너를 통한 배포 방법도 살펴봐야 한다. 경우에 따라 그래프QL이나 머신러닝 같은 기술을 사용해야 할 수도 있다. 이 책이 다양한 기술을 살펴보고 적재적소에 사용하는 데 도움이 되길 바란다.

Selenium 웹드라이버 테스트 자동화

유닛 테스트의 유용성이나 방법론에 대해서는 이미 널리 알려졌지만, UI 테스트(특히 웹 애플리케이션)에 대한 자동화는 아직 다양한 시도를 반복하고 있다. 브라우저 제작사의 자바스크립트, CSS, HTML에 대한 표준화 노력 덕분에 브라우저 사이의 차이점이 많이 줄어들었다. 하지만 웹 애플리케이션이 성장하는 만큼 브라우저의 미세한 차이가 큰 영향을 미치는 경우가 발생한다. 이 차이를 잡아내기 위해서는 같은 기능에 대한 브라우저별 테스트가 필요하다. 2014년 현재 IE는 버전 11까지 나왔고 크롬이나 파이어폭스의 빠른 버전업 등으로 최신 브라우저가 쉬지 않고 쏟아지는 상황에서, 모든 브라우저에 대해 매번 같은 테스트를 수행하는 일은 그 자체로 많은 부담이 된다. 셀레늄이 처음 알려지기 시작한 2000년대 후반, 셀레늄은 파이어폭스 플러그인으로 사용자 입력을 재현하는 정도에 그쳤지만, 웹드라이버와 결합한 지금은 다양한 브라우저와 프로그래밍 언어, 강력한 API를 지원하며, 예전에 비해 놀랄만한 성장을 보여준다. 오늘날 셀레늄 웹드라이버는 그 어떤 것보다도 가장 나은 웹 UI 테스트 자동화 도구다. 이 책은 2017년 2월에 릴리스된 셀레늄 3.1.0 버전으로 업데이트했다. 다수의 윈도우 전용 기능이 삭제돼, 2장의 '윈도우 프로세스 제어', '셀레늄 웹드라이버로 윈도우 레지스트리 값 얻기', '셀레늄 웹드라이버로 윈도우 레지스트리 값 수정' 절도 그에 맞춰 삭제했다. 앞으로도 꾸준히 사랑 받는 책이 되길 바란다.

Selenium WebDriver 길들이기

자동으로 실제 브라우저에서 실행할 웹 애플리케이션 테스트를 계획한다면, 시작점은 사실상의 표준인 Selenium WebDriver가 될 것이다. 이제는 가상화와 클라우드 서비스 시대를 맞아, 모바일을 포함한 다양한 OS와 브라우저에서 Selenium WebDriver 테스트 환경을 제공해주는 서비스 업체들도 등장하고 있다. 발전해가는 환경에서 RemoteWebDriver, Selenium Grid와 같은 Selenium WebDriver 기반 지식을 알고 자동화 테스트를 구성한다면, 더 효과적인 테스트가 되리라 본다.

Selenium을 활용한 테스트 자동화 2/e

웹 브라우저 자동화 테스트의 실질적 표준이던 셀레늄 웹드라이버가 3 버전이 되면서 이제 진짜 표준이 됐다. W3C 표준을 준수하는 브라우저라면 셀레늄을 지원하기 때문에 브라우저 자동화를 더 쉽게 작성할 수 있다. 프로젝트의 개발, 배포의 주기가 갈수록 빨라지는 추세에 자동화 테스트는 반드시 구축해야 하는 개발 프로세스의 일부가 되고 있다. 더불어 셀레늄을 둘러싼 주변의 환경도 빠르게 변화하고 있다. 이 책에서는 변화하는 환경에 맞춘 내용들을 다루고 있다. 또한 자바8에서 추가된 함수형 기능이나 셀레늄 그리드를 기반으로 하는 클라우드 서비스에 대한 내용과 데이터 주도 테스트에 대한 내용도 확인할 수 있다. 이 책을 통해 새로운 셀레늄 버전에서 달라진 부분과 이전보다 강화된 예제들을 살펴보고 테스트 자동화을 향한 여정에 도움이 됐으면 좋겠다.

가나다별 l l l l l l l l l l l l l l 기타
국내문학상수상자
국내어린이문학상수상자
해외문학상수상자
해외어린이문학상수상자