<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Playwright 可靠的端到端測試

          共 1760字,需瀏覽 4分鐘

           ·

          2021-11-07 11:13

          一個與 Puppeteer 類似的端到端(e2e)測試工具。

          Playwright 為當(dāng)代 Web 應(yīng)用程序提供可靠的端到端測試。

          支持所有瀏覽器

          在 Chromium、Firefox 和 WebKit 上進行測試。Playwright 擁有適用于所有當(dāng)代瀏覽器的完整 API,包括 Google Chrome 和 Microsoft Edge(帶有Chromium)、Apple Safari(帶有WebKit)和 Mozilla Firefox。


          跨平臺 WebKit 測試。借助 Playwright,使用適用于 Windows、Linux 和 macOS 的 WebKit 構(gòu)建測試您的應(yīng)用在 Apple Safari 中的行為。在本地和 CI 上進行測試。


          測試手機。使用設(shè)備模擬在移動 Web 瀏覽器中測試您的響應(yīng)式 Web 應(yīng)用程序。


          無頭和有頭。Playwright 支持所有瀏覽器和所有平臺的無頭(無瀏覽器 UI)和有頭(帶瀏覽器 UI)模式。Headed 非常適合調(diào)試,而 Headless 速度更快,適合 CI/云執(zhí)行。

          快速可靠的執(zhí)行

          自動等待 API。Playwright 動會自動等待元素準(zhǔn)備就緒。這提高了可靠性并簡化了測試編寫。


          無超時自動化。Playwright 接收瀏覽器信號,如網(wǎng)絡(luò)請求、頁面導(dǎo)航和頁面加載事件,以消除導(dǎo)致不穩(wěn)定的睡眠超時的需要。


          使用瀏覽器上下文快速隔離。將單個瀏覽器實例重用于具有瀏覽器上下文的多個隔離執(zhí)行環(huán)境。


          彈性元素選擇器。Playwright 可以依靠面向用戶的字符串(如文本內(nèi)容和可訪問性標(biāo)簽)來選擇元素。這些字符串比緊密耦合到 DOM 結(jié)構(gòu)的選擇器更有彈性。

          強大的自動化功能

          多個域、頁面和框架。Playwright 是一個進程外自動化驅(qū)動,不受頁內(nèi) JavaScript 執(zhí)行范圍的限制,可以自動化多頁面場景。


          強大的網(wǎng)絡(luò)控制。Playwright 引入了上下文范圍的網(wǎng)絡(luò)攔截來存根和模擬網(wǎng)絡(luò)請求。


          當(dāng)代瀏覽器功能特性。Playwright 支持 web components、地理定位、權(quán)限、 web workers 和其他當(dāng)代 web APIs.


          覆蓋所有場景的能力。支持文件下載和上傳、進程外 iframe、本機輸入事件,甚至暗黑模式。

          安裝

          Playwright 有自己的測試運行器用于端到端測試,我們稱之為 Playwright 測試。

          npm i -D @playwright/test# install supported browsersnpx playwright install

          您可以選擇僅安裝選定的瀏覽器

          第一次測試

          創(chuàng)建 tests/foo.spec.js(或 tests/foo.spec.ts 用于 TypeScript)來定義您的測試。

          import { test, expect } from '@playwright/test';
          test('basic test', async ({ page }) => { await page.goto('https://playwright.dev/'); const title = page.locator('.navbar__inner .navbar__title'); await expect(title).toHaveText('Playwright');});


          現(xiàn)在運行您的測試,假設(shè)測試文件在tests目錄中。

          npx playwright test


          Playwright Test 剛剛使用 Chromium 瀏覽器以無頭方式運行了一個測試。讓我們告訴它使用有頭瀏覽器:

          npx playwright test --headed


          其他瀏覽器呢?讓我們使用 Firefox 運行相同的測試:

          npx playwright test --browser=firefox


          最后,在所有瀏覽器上測試:

          npx playwright test --browser=all


          瀏覽 77
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  久久午夜福利电影 | 精品一区二区久久久久久久网站 | 精品乱伦小说 | 一级一片内射 | 影音先锋成人电影 |