iT邦幫忙

2018 iT 邦幫忙鐵人賽
DAY 9
0

介紹

Jest 是 React 在寫測試時常會用到的套件,這個套件官方文進也提供了 Puppeteer 使用方法 ,這一篇來看看Puppeteer是如何在 Jest上寫測試的

安裝套件


yarn init
yarn add puppeteer jest

在package.json加上測試的script

"scripts": {
  "test": "jest"
}

在jest 的 describe是來定義這個一連串要測試的名稱,beforeEach 是在每次測試之前為了確保環境乾淨所以都會起一個新的無頭模式的browser,afterEach 則是在測試之後關閉 瀏覽器 , test 則是要執行要測試的作動名稱
這邊會去抓到 title並且期望值是線上讀書會

const puppeteer = require('puppeteer');

describe('打開 線上讀書會網站', () => {
  var browser, page;
  var url = 'https://17book.me'
beforeEach (async () => {
    browser = await puppeteer.launch({ headless: false });
    page = await browser.newPage();
  })
afterEach (() => {
    browser.close()
  })

test('Title == 線上讀書會', async () => {
    await page.goto(url);
    const title = await page.title();
    expect(title).toBe("線上讀書會");
  });
 
})

總結

Puppeteer的 e2e 測試, 搭上使用 Jest 一個範例可以看出程式碼很簡潔, Jest 官方也有介紹如何使用 Puppeteer 連結在下方可以參考

https://facebook.github.io/jest/docs/en/puppeteer.html


上一篇
Puppeteer & FB Token
下一篇
Puppeteer & devtools-protocol
系列文
Puppeteer30

尚未有邦友留言

立即登入留言