Hướng dẫn playwright python package - gói trăn của nhà viết kịch

Như chúng ta đã biết, các headles browsers có khả năng thực thi mã JavaScript nhanh và mô phỏng việc nhấp hoặc di chuột vào các phần tử trên trang trên các thiết bị khác nhau. Các headles browsers cũng cực kỳ hữu ích khi kiểm tra hoạt động mạng, bắt chước các hành vi của người dùng khi sử dụng và tạo các requests. Chúng thường nhanh hơn các trình duyệt thực vì ta không cần khởi động GUI của trình duyệt, vậy nên ta có thể bỏ qua thời gian trình duyệt thực cần để tải CSS và JavaScript và hiển thị HTML. Bởi vậy, chúng thường được sử dụng trong quá trình kiểm thử tự đông nhằm đảm bảo mọi thứ hoạt động như dự định trước khi mã nguồn được triển khai lên môi trường production. Có nhiều giải pháp để viết các ca kiểm thử sử dụng headless browser và trong bài viết này, chúng ta sẽ cùng nhau tìm hiều về thư viện Playwright.

Nội dung chính

  • Playwright là gì?
  • Bắt đầu làm quen với Playwright
  • Viết các headless tests
  • Sử dụng Playwright với Mocha
  • Sử dụng với GitHub Action
  • Tổng kết
  • Tài liệu tham khảo

Nội dung chính

  • Playwright là gì?
  • Bắt đầu làm quen với Playwright
  • Viết các headless tests
  • Sử dụng Playwright với Mocha
  • Sử dụng với GitHub Action
  • Tổng kết
  • Tài liệu tham khảo

Nội dung chính

  • Playwright là gì?
  • Bắt đầu làm quen với Playwright
  • Viết các headless tests
  • Sử dụng Playwright với Mocha
  • Sử dụng với GitHub Action
  • Tổng kết
  • Tài liệu tham khảo

Playwright là gì?

Bắt đầu làm quen với Playwrightever-green, capable, reliable and fast.ever-green, capable, reliable and fast.ever-green, capable, reliable and fast.

Viết các headless tests

Sử dụng Playwright với Mocha
  • Sử dụng với GitHub Action
  • Tổng kết
  • Tài liệu tham khảo
  • Bắt đầu làm quen với Playwrightever-green, capable, reliable and fast.ever-green, capable, reliable and fast.
  • Bắt đầu làm quen với Playwrightever-green, capable, reliable and fast.
  • Sử dụng Playwright với Mocha
  • Playwright is a Node.js library to automate Chromium, Firefox and WebKit with a single API. Playwright is built to enable cross-browser web automation that is ever-green, capable, reliable and fast.

Bắt đầu làm quen với Playwright

Viết các headless tests

Sử dụng Playwright với Mocha

mkdir playright-example && cd playright-example && npm init -y

Sử dụng với GitHub Action

touch index.js && npm i --save playwright

Tổng kết

Viết các headless tests

Sử dụng Playwright với Mocha

Sử dụng với GitHub Action

Tổng kết

example-chromiumexample-firefox.pngexample-webkit.png

Sử dụng Playwright với Mocha

Sử dụng với GitHub Action

Tổng kết

const playwright = require('playwright')
const chai = require('chai')
const expect = chai.expect
const BASE_URL = 'http://todomvc.com/examples/react/#/'

let page, browser, context

describe('TO DO APP TESTS - PLAYWRIGHT', () => {

    beforeEach(async () => {
        browser = await playwright['chromium'].launch({ headless: false })
        context = await browser.newContext()
        page = await context.newPage(BASE_URL)
    })

    afterEach(async function() {
        await page.screenshot({ path: `${this.currentTest.title.replace(/\s+/g, '_')}.png` })
        await browser.close()
    })

    it('List is loaded empty', async() => {
        const sel = 'ul.todo-list li'
        const list = await page.$$(sel)
        expect(list.length).to.equal(0)
    })

    it('Adds a new todo in empty list', async() => {
        await page.waitForSelector('input')
        const element = await page.$('input')
        await element.type('Practice microsoft playwright')
        await element.press('Enter')

        // check list of ToDo
        const sel = 'ul.todo-list li'
        await page.waitForSelector(sel)
        const list = await page.$$(sel)
        expect(list.length).to.equal(1)
        expect(await page.$eval(sel, node => node.innerText)).to.be.equal('Practice microsoft playwright')
    })
})

Tài liệu tham khảo

 mocha # hoặc node_modules/mocha/bin/mocha

Bắt đầu làm quen với Playwrightever-green, capable, reliable and fast.ever-green, capable, reliable and fast.

Bắt đầu làm quen với Playwrightever-green, capable, reliable and fast.

Sử dụng với GitHub Action

Tổng kết

  • Tài liệu tham khảo
on:
  push:
    branches:
    - master

jobs:
  e2e-tests:
    runs-on: ubuntu-latest # or macos-latest, windows-latest

    steps:
      - uses: actions/[email protected]

      - uses: actions/setup-[email protected]

      - uses: microsoft/playwright-github-[email protected]

      - name: Install dependencies and run tests
        run: npm install && npm test
  • Bắt đầu làm quen với Playwrightever-green, capable, reliable and fast.ever-green, capable, reliable and fast.
Bắt đầu làm quen với Playwrightever-green, capable, reliable and fast.

Tổng kết

Tài liệu tham khảo

Bắt đầu làm quen với Playwrightever-green, capable, reliable and fast.ever-green, capable, reliable and fast.

Bắt đầu làm quen với Playwrightever-green, capable, reliable and fast.

Sử dụng Playwright với Mocha

Tài liệu tham khảo

  • https://github.com/microsoft/playwright
  • Bắt đầu làm quen với Playwrightever-green, capable, reliable and fast.ever-green, capable, reliable and fast.