PhantomJS(팬텀JS)는 웹 페이지 상호작용을 자동화하기 위해 사용되는 헤드리스 브라우저이다. PhantomJS는 자동화된 탐색, 스크린샷, 사용자 동작, 어서션을 가능케 하므로 지속적 통합 환경과 같은 헤드리스 시스템 내에서 브라우저 기반 유닛 테스트를 수행하기 위한 도구로 이용이 가능하다.

PhantomJS
원저자Ariya Hidayat
개발자Ariya Hidayat
발표일2011년 1월 17일(13년 전)(2011-01-17)
안정화 버전
2.1.1[1] / 2016년 1월 24일(8년 전)(2016-01-24)
저장소
프로그래밍 언어C++
종류헤드리스 브라우저
라이선스BSD[2]
상태개발 중
웹사이트phantomjs.org

PhantomJS는 사파리구글 크롬과 유사한 브라우징 환경을 갖춘 웹킷 기반이다. BSD 허가서로 출시된 오픈 소스 소프트웨어이다.[2]

역사 편집

PhantomJS는 수년 간의 개발 끝에 Ariya Hidayat에 의해 2011년 1월 23일 출시되었다.[3]

공개 프로젝트의 첫 커밋은 2011년이었다.[4] 이 프로젝트는 2010년 12월 26일부터 현재까지 매주 어느 정도의 기여를 통해 유지되고 있다.[5] 2015년 2월 5일 기준으로 이 프로젝트의 오픈 소스 코드 저장소는 770명에 의해 주시되고 있으며 107명의 기여자에 의해 기여되었다. 또, 2015년 2월 5일 기준으로 1376개의 개방된 이슈와 1252개의 닫힌 이슈를 보유하고 있다.

사용법 편집

PhantomJS 자바스크립트 API를 사용하여 웹 페이지를 열고 스크린샷을 찍고 사용자 동작을 실행하고 페이지 컨텍스트 내에서 자바스크립트를 삽입하여 실행할 수 있다. 이를테면 다음의 코드는 위키백과를 열고 로드할 때 파일로 스크린샷을 저장하고 끝낸다.

console.log('웹 페이지를 로드하는 중');
var page = require('webpage').create();
var url = 'https://ko.wikipedia.org/';
page.open(url, function (status) {
  console.log('페이지를 로드함');
  page.render('wikipedia.org.png');
  phantom.exit();
});

같이 보기 편집

각주 편집

  1. “Releases · ariya/phantomjs”. 《GitHub》. 2017년 4월 21일에 확인함. 
  2. “phantomjs/LICENSE.BSD at master · ariya/phantomjs”. 《GitHub》 (영어). 
  3. “don't code today what you can't debug tomorrow”. 《ariya.blogspot.com》. 2015년 7월 20일에 확인함. 
  4. “ariya/phantomjs”. 《GitHub》. 2015년 7월 20일에 확인함. 
  5. “Contributors to ariya/phantomjs · GitHub”. 《깃허브. 2015년 7월 20일에 확인함. 

외부 링크 편집