팬텀JS

PhantomJS
팬텀JS
Phantomjs-logo.png
원본 작성자아리야히다트
개발자아리야히다트
초기 릴리즈2011년 1월 17일; 11년(2011-01-17)
최종 발매
2.1.1[1] / 2016년 1월 24일; 6년(2016-01-24)
리포지토리
기록 위치C++, JavaScript, C
유형헤드리스 브라우저
면허증BSD[2]
웹사이트phantomjs.org Edit this on Wikidata

팬텀JS는 웹 페이지 상호 작용을 자동화하는 데 사용되는 단종된 헤드리스 브라우저다. 팬텀JS는 자동 탐색, 스크린샷, 사용자 행동 및 주장을 가능하게 하는 자바스크립트 API를 제공하여, 연속 통합 환경과 같은 머리 없는 시스템에서 브라우저 기반 장치 테스트를 실행하는 데 사용되는 공통 도구로 만든다. 팬텀JS는 웹키트를 기반으로 사파리, 구글 크롬과 유사한 브라우징 환경을 조성하고 있다(크롬의 웹키트 포크가 블링크(Blink)로 진화하기 전). BSD 라이선스에 따라 출시된 오픈소스 소프트웨어다.[2]

역사

팬텀JS는 아리야 히다야트가 개발 몇 년 후 2011년 1월 23일에 출시했다.[3]

공공 사업에 대한 첫 번째 약속은 2011년이었다.[4]

일반적으로 그림으로 팬텀을 가리키는 데 사용되는 로고JS는 검정색 배경 위에 있는 형광색 파란색 유령이다. 이는 그래픽 사용자 인터페이스, 즉 브라우저의 본체가 없어서 팬텀을 만드는 것을 말한다.JS 사용자들은 유령처럼 보인다.

2018년 3월 팬텀 개발JS는 적극적인 기부금 부족으로 중단되었다.[5]

사용법

팬텀JS JavaScript API를 사용하면 페이지 컨텍스트에서 웹 페이지를 열고 스크린샷을 찍고 사용자 작업을 실행하고 주입된 JavaScript를 실행할 수 있다. 예를 들어, 다음 코드는 위키피디아를 열고, 로드할 때 스크린샷을 파일에 저장하고 종료한다.

위로하다.통나무를 하다('웹 페이지 로드 중'); 시합을 하다 페이지를 매기다 = 요구하다('webpage').만들다(); 시합을 하다 url = 'http://en.wikipedia.org/'; 페이지를 매기다.개방된(url, 기능을 하다 (지위) {   위로하다.통나무를 하다('페이지 로드됨');   페이지를 매기다.렌더링하다('wikipedia.org.png');   환영의.퇴장하다(); }); 

생태계

팬텀JS는 유사한 프로젝트들이 머리 없는 브라우저와 상호 작용하는 표준 방법으로 API를 채택할 정도로 가치가 있다. SlimerJS는 팬텀을 제공했다.JS 유사 API, 그러나 WebKit보다는 MozillaGecko 브라우저 엔진 위에.[6] 마찬가지로 사소한 것JS는 Internet ExplorerMSHTML 엔진을 겨냥했다.[7]

팬텀 출시 직후JS, Nicolas Perriault는 팬텀 위에 있는 도서관 모음인 CasperJS를 썼다.자동화된 웹 페이지 테스트를 위해 클라이언트로서의 기능을 확장하여 사용자가 팬텀을 활용한 BDD 테스트를 만들 수 있도록 하는 JSJS. 캐스퍼의 최종 출시JS는 2017년.[8]

야후는 팬텀을 활용한 YSlow 버전을 개발했다.JS [9]웹 사이트에 대한 성능 메트릭스 수집

사용자

몇몇 유명한 회사들은 팬텀을 사용했다.JS.

  • 트위터QUnit와 팬텀을 사용했다.2015년 기준 단위 시험용 JS.[10]
  • LinkedIn 사용된 팬텀2011년 현재 성능 테스트를 위한 [11]JS 기반 도구
  • 넷플릭스는 팬텀으로 구축된 헤드리스 브라우저인 스케치(Sketchy)를 사용했다.JS, 2014년 현재 현장을 방문하지 않고도 무엇을 하고 있는지 이해하기 위해서입니다.[12]
  • 타임 워너 케이블은 팬텀을 사용했다.JS with CoffeeScript, Jasmine, JUnit XML for Jenkins의 2012년 현재 지속적인 통합.[13]

참고 항목

참조

  1. ^ "Releases · ariya/phantomjs". GitHub. Retrieved 21 April 2017.
  2. ^ a b "phantomjs/LICENSE.BSD at master · ariya/phantomjs". GitHub.
  3. ^ "don't code today what you can't debug tomorrow". ariya.blogspot.com. Retrieved 20 July 2015.
  4. ^ "ariya/phantomjs". GitHub. Retrieved 20 July 2015.
  5. ^ "Archiving the project: suspending the development". ariya/phantomjs. Github. 2018-03-03.
  6. ^ Laurent Jouanneau. "FaQ - SlimerJS". slimerjs.org. Retrieved 20 July 2015.
  7. ^ "trifleJS". Retrieved 20 July 2015.
  8. ^ "CasperJS on GitHub". GitHub. Retrieved 2021-04-11.
  9. ^ Marcel Duran. "YSlow - Official Open Source Project Website". yslow.org. Retrieved 20 July 2015.
  10. ^ "Leo Lanese on Twitter". Twitter. Retrieved 20 July 2015.
  11. ^ phegaro. "LinkedIn Mobile: How do we do it?". SlideShare. Retrieved 20 July 2015.
  12. ^ Michael Mimoso. "Netflix Open Source Security Tools Solve Range of Challenges". threatpost.com. Retrieved 20 July 2015.
  13. ^ "one year of wandering headlessly". ofilabs.com. Retrieved 20 July 2015.

외부 링크