극작가(소프트웨어)
Playwright (software)개발자 | 마이크로소프트 |
---|---|
최초출시 | 2020년 1월 31일;[1] | 전 (
안정적인 방출 | v1.40.1[2] / 2023년 11월 28일, 전 |
저장소 | github |
작성자 | 타이프스크립트 |
운영체제 | 마이크로소프트 윈도우, macOS, 리눅스 |
유형 | 웹 응용 프로그램에 대한 소프트웨어 테스트 프레임워크 |
면허증. | 아파치 라이선스 2.0 |
웹사이트 | 극작가.dev |
플레이라이트(Playwright)는 마이크로소프트가[4][5] 개발하고 2020년 1월 31일 출시한 브라우저 테스트 및 웹 스크래핑을[3] 위한 오픈 소스 자동화 라이브러리로, 이후 프로그래머와 웹 개발자들 사이에서 인기를 끌고 있습니다.
Playwright는 단일 API로 Chrome, Firefox 및 WebKit에서[6] 브라우저 작업을 자동화하는 기능을 제공합니다. 이를 통해 개발자는 자동화를 위해 헤드리스 모드뿐만 아니라 헤드리스 모드에서도 실행할 수 있는 안정적인 엔드 투 엔드 테스트를 만들 수 있습니다. 극작가는 사이프러스에 비유되어 왔습니다.[7]
플레이라이트는 자바스크립트, 파이썬, C#, 자바와 같은 프로그래밍 언어를 지원하지만 주 API는 원래 Node.js로 작성되었습니다. 네트워크 차단 및 여러 브라우저 컨텍스트를 포함한 모든 최신 웹 기능을 지원하고 자동 대기를 제공하여 테스트의 취약성을 줄입니다.[8]
@극작가/시험
@playwriter/test는 Playwriter API 위에 구축된 Playwriter 팀에 의해 개발되고 유지되는 Jest와 같은 주장을[9] 가진 테스트 주자입니다. 이 테스트 러너는 Playwright와 긴밀하게 통합되어 있으며 엔드 투 엔드 테스트를 위해 특별히 설계되었습니다.[10] 브라우저별 테스트, 병렬 테스트 실행,[11] 풍부한 브라우저 컨텍스트 옵션, 스냅샷 테스트, 자동 재시도 등의 기능이 있습니다.
역사
플레이라이트는 2020년 1월 마이크로소프트에 의해 발표되었습니다.[12] 이전에 구글에서 Puppeteer와 같은 유사한 프로젝트를 수행한 엔지니어 팀에 의해 개발되었습니다.[13] Playwright는 시작된 이래로 적극적으로 유지되어 왔으며 웹[14] 테스트 커뮤니티에서 빠른 성장과 채택을 목격해 왔습니다.
@playwriter/test runner는 브라우저 기반 테스트를 위한 보다 포괄적인 솔루션을 제공하기 위한 노력의 일환으로 나중에 출시되었습니다. 개발에는 Playwright API의 잠재력을 최대한 활용하고 엔드 투 엔드 테스트를 보다 강력하고 간단하게 만들 수 있는 전문화된 운영자가 필요하다는 점이 크게 기반이 되었습니다.
사용법 및 예시
Playwright는 주로 브라우저 작업을 자동화하는 데 사용됩니다. 이 작업은 단순한 페이지 탐색 및 콘텐츠 스크래핑에서 자동화된 양식 제출, 사용자 상호 작용 등과 같은 보다 복잡한 작업에 이르기까지 다양합니다. 예를 들어 Playwright를 사용하는 간단한 자바스크립트 코드 스니펫은 다음과 같이 보일 수 있습니다.
상투적인 { 크롬 } = 요구하다(극작가.); (비동기의 () => { 상투적인 브라우저 = 기다리다 크롬.시작하다(); 상투적인 페이지입니다. = 기다리다 브라우저.새로운 페이지(); 기다리다 페이지입니다..에 가다('https://example.com '); 기다리다 페이지입니다..스크린샷({ 경로.: 'example.png' }); 기다리다 브라우저.가까운.(); })();
이 예에서 Playwright는 크롬 브라우저를 열고 'https://example.com '로 이동한 후 스크린샷을 찍어 'example.png'로 저장하는 데 사용됩니다.
@playwriter/test는 개발자가 보다 체계적이고 확장 가능한 방식으로 테스트를 작성하고 구성할 수 있는 테스트 러너를 제공함으로써 이러한 기능을 더욱 확장합니다. @playwright/test를 사용한 예제 테스트는 다음과 같이 보일 수 있습니다.
상투적인 { 시험 } = 요구하다('@playwriter/test'); 시험('기초시험', 비동기의 ({ 페이지입니다. }) => { 기다리다 페이지입니다..에 가다('https://example.com '); 기다리다 기대하다(페이지입니다.).제목을 가지려면('예시 도메인'); });
이 예제에서는 'https://example.com '으로 이동하여 페이지 제목이 '예시 도메인'인지 확인하는 테스트를 작성합니다.
접수처
Playwriter와 @playwriter/test 모두 개발자 커뮤니티에서 좋은 평가를 받았습니다. 견고성, 속도 및 업계에서 널리 사용되어 웹 애플리케이션 테스트 및 개발에 중요한 역할을 한다는 점에서 찬사를 받고 있습니다.
참고문헌
- ^ "v0.10.0 release". GitHub. Retrieved 1 June 2022.
- ^ 태그 · 마이크로소프트/극본 · 깃허브
- ^ Bansal, Mudit; Dar, Muhammad Ameen; Bhat, Moshin Manzoor; Sharma, Tushar; Uniyar, Rishita (2023). "Data Ingestion and Processing using Playwright". TechRxiv.
- ^ Yegulalp, Serdar (30 September 2020). "Microsoft's Playwright simplifies tests for Python web apps". InfoWorld. IDG Communications. Retrieved 2 July 2023.
- ^ Tung, Liam (1 October 2020). "Microsoft: Playwright for Python language lets you test web apps in all major browsers". ZDNET. Retrieved 2 July 2023.
- ^ Judis, Stefan (22 October 2022). "Playwright, a Time-Saving End-to-End Testing Framework". The New Stack. Retrieved 2 July 2023.
- ^ Tej, Krishna. "Playwright vs Cypress: A Comparison". BrowserStack. Retrieved 2 July 2023.
- ^ "Why Playwright?". Playwright. Microsoft. Retrieved 1 June 2023.
- ^ "Assertions". Playwright. Microsoft. Retrieved 1 June 2023.
- ^ "Library". Playwright. Microsoft. Retrieved 1 June 2023.
- ^ "Parallelism and sharding". Playwright. Microsoft. Retrieved 1 June 2023.
- ^ Attam, Arjun (30 September 2020). "Announcing Playwright for Python: Reliable end-to-end testing for the web". Microsoft DevBlogs. Microsoft. Retrieved 2 July 2023.
- ^ Schiemann, Dylan (30 January 2020). "Microsoft Announces Playwright Alternative to Puppeteer". InfoQ. C4Media. Retrieved 2 July 2023.
- ^ Gagan, Luc (1 July 2023). "A Comparative Analysis of Playwright Adoption vs Cypress and Selenium". Rayrun. Retrieved 2 July 2023.
- ^ "toHaveTitle assertion". Playwright. Microsoft. Retrieved 1 June 2023.
더보기
- Kinsbruner, Eran (2022). A Frontend Web Developer's Guide to Testing: Explore leading web test automation frameworks and their future driven by low-code and AI. Packt Publishing. ISBN 978-1803238319.
- Irvine, Daniel (2023). Svelte with Test-Driven Development: Advance your skills and write effective automated tests with Vitest, Playwright, and Cucumber.js. Packt Publishing. ISBN 978-1837638338.