Playwright入門 —— 簡介


Playwright是微軟提供的一個web自動化工具,和puppeteer比較類似,微軟自己對它的優勢介紹如下:

支持所有瀏覽器

  • 在Chromium, Firefox 和 WebKit上測試。Playwright對所有的現代瀏覽器都有完整的API覆蓋,包括谷歌Chrome和微軟Edge(含 Chromium),蘋果Safari(含 WebKit)和Mozilla Firefox。
  • 跨平台WebKit測試. 使用Playwright,測試你的應用程序在Apple Safari中的表現,並為Windows、Linux和macOS構建WebKit。在本地和CI上進行測試。
  • 測試移動。使用  device emulation在移動網絡瀏覽器中測試您的響應式 Web 應用程序。
  • 無頭和有頭。Playwright支持所有瀏覽器和所有平台的headless(無瀏覽器UI)和headful(有瀏覽器UI)模式。Headful非常適合調試,而headless則更快,適合CI/cloud執行。

快速可靠的執行

  • 自動等待API。扮演者交互 auto-wait for elements要准備好。這提高了可靠性並簡化了測試編寫。
  • 免超時自動化。Playwright接收瀏覽器信號,如網絡請求、頁面導航和頁面加載事件,以消除導致flakiness的睡眠超時需求。
  • 使用瀏覽器上下文進行精益並行化。為多個並行化的隔離執行環境重用一個瀏覽器實例 browser contexts.
  • 彈性元素選擇器。Playwright可以依靠面向用戶的字符串,如文本內容和可訪問性標簽來 select elements。這些字符串比與DOM結構緊密耦合的選擇器更有彈性。

強大的自動化功能

與您的工作流程集成

下面是一個簡單的例子。

const {chromium} = require('playwright');

(async () => {
    const browser = await chromium.launch({
        headless: false,
        executablePath: 'C:\\Program Files (x86)\\Microsoft\\Edge\\Application\\msedge.exe'
    });
    const page = await browser.newPage();

    await page.goto('https://www.cnblogs.com/TianFang/');
    await page.screenshot({path: 'example.png'});
    await browser.close();
})();

最近拿它當蜘蛛程序簡單的試了一下,還是非常好用的,主要的好處有:

  1. 更強大、好用的api
  2. 更易讀的文檔
  3. 更方便的調試功能
  4. 易調試
  5. 除了nodejs外,還有c#的版本

當然,目前的主流測試工具已經有不少了,我本來也是拿它當蜘蛛使用,就不深入比較了,感興趣的朋友可以看下網上的對比: Puppeteer, Selenium, Playwright, Cypress – how to choose?

相關站點:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM