PhantomJS-개요

PhantomJS 라고한다 headless browserJavaScript 코드를 실행하는 동안 브라우저의 개입이 없기 때문입니다. 실행은 브라우저 디스플레이에 표시되지 않고 명령 줄 프롬프트에 표시됩니다. 같은 기능CSS Handling, DOM Manipulation, JSON, Ajax, Canvas, SVG,등은 명령 프롬프트에서 모두 처리됩니다. PhantomJS에는 GUI가 없으므로 모든 실행이 명령 줄에서 이루어집니다.

PhantomJS를 사용하여 파일에 쓰기, 파일 내용 읽기 또는 파일 업로드, 화면 캡처, 웹 페이지를 pdf로 변환 등을 할 수 있습니다. 헤드리스 브라우저를 사용하면 모든 브라우저 동작을 얻을 수 있습니다.Cookies, Http Request MethodsGET /POST, Clearing Cookies, Deleting CookiesReloading of Page, Navigating to a Different Page.

PhantomJS는 Google Chrome, Mozilla Firefox, Safari 등과 같은 유명한 브라우저와 유사한 브라우징 환경을 가진 WebKit을 사용합니다. 또한 스크린 샷 촬영, 파일 업로드, 파일 쓰기, 파일 읽기에 도움이되는 많은 JavaScript API를 제공합니다. , 웹 페이지와의 상호 작용 등

PhantomJS는 플러그인이 필요하고 명령 줄에서 동일한 기능을 지원하기가 어렵 기 때문에 Flash 또는 Video를 지원하지 않습니다.

PhantomJS의 특징

이제 PhantomJS가 제공하는 기능을 이해하겠습니다.

페이지 자동화

PhantomJS를 사용하면 API를 사용하여 페이지 내용을 읽을 수 있습니다. DOM을 조작하고 외부 라이브러리를 사용하여 필요한 작업을 수행하는 데 도움이 될 수 있습니다.

화면 캡처

PhantomJS는 지정된 페이지의 화면을 캡처하고 PNG, JPEG, PDF 및 GIF와 같은 다양한 형식의 이미지와 동일하게 저장하는 데 도움이됩니다. 화면 캡처의 도움으로 웹 콘텐츠가 정상인지 쉽게 확인할 수 있습니다.

PhantomJS는 개발자가 스크린 샷의 크기를 조정하고 캡처 할 영역을 지정할 수 있도록하는 속성과 메서드를 제공합니다.

헤드리스 테스트

PhantomJS는 명령 줄에서 UI 테스트를 지원합니다. 스크린 샷을 사용하면 UI에서 오류를 쉽게 찾을 수 있습니다. PhantomJS는 때때로 단독으로 테스트하는 데 도움이되지 않습니다. 그러나 Mocha, Yoeman 등과 같은 다른 테스트 라이브러리와 함께 래핑 할 수 있습니다. PhantomJS의 도움을 받아 파일을 업로드하고 양식을 제출할 수 있습니다.

PhantomJS는 사이트에서 로그인을 테스트하고 보안이 손상되지 않았는지 확인하는 데 사용할 수 있습니다. PhantomJS는 다음과 같은 다른 도구와 함께 사용할 수 있습니다.CasperJS, Mocha, Qunit 테스트를 더욱 강력하게 만들 수 있습니다.

네트워크 모니터링

PhantomJS의 중요한 기능 중 하나는 사용 가능한 API를 사용하여 네트워크 연결을 모니터링하는 용도입니다. PhantomJS는 네트워크 트래픽 검사를 허용합니다. 네트워크 동작 및 성능에 대한 다양한 분석을 구축하는 데 적합합니다.

PhantomJS는 라이브 환경에서 웹 페이지의 성능에 대한 데이터를 수집하는 데 사용할 수 있습니다. PhantomJS는 다음과 같은 도구와 함께 사용할 수 있습니다.Yslow 모든 웹 사이트의 성능 지표를 수집합니다.