Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Playwright can do this?
Search
stefan judis
March 30, 2023
Technology
0
190
Playwright can do this?
Learn why Microsoft's testing framework is a stellar solution to test your sites end-to-end.
stefan judis
March 30, 2023
Tweet
Share
More Decks by stefan judis
See All by stefan judis
Back to boring (part 2)
stefanjudis
0
290
Things you should know about Frontend Development in 2022
stefanjudis
0
500
Throw yourself out there for fun and profit
stefanjudis
0
96
Back to Boring
stefanjudis
1
450
Wanna scale up? Make sure your CMS is ready for it!
stefanjudis
0
230
Did we(b development) lose the right direction?
stefanjudis
6
2.2k
Regular expressions – my secret love
stefanjudis
1
1k
Write a Function
stefanjudis
0
560
React in a worker, worker, worker...
stefanjudis
2
550
Other Decks in Technology
See All in Technology
実践アプリケーション設計 ①データモデルとドメインモデル
recruitengineers
PRO
2
210
知られざるprops命名の慣習 アクション編
uhyo
10
2.4k
そのコンポーネント、サーバー?クライアント?App Router開発のモヤモヤを可視化する補助輪
makotot
3
280
GitHub Copilot coding agent を推したい / AIDD Nagoya #1
tnir
2
4.5k
アジャイルテストで高品質のスプリントレビューを
takesection
0
110
自社製CMSからmicroCMSへのリプレースがプロダクトグロースを加速させた話
nextbeatdev
0
130
Preferred Networks (PFN) とLLM Post-Training チームの紹介 / 第4回 関東Kaggler会 スポンサーセッション
pfn
PRO
1
180
.NET開発者のためのAzureの概要
tomokusaba
0
230
実践データベース設計 ①データベース設計概論
recruitengineers
PRO
2
200
マイクロモビリティシェアサービスを支える プラットフォームアーキテクチャ
grimoh
1
200
見てわかるテスト駆動開発
recruitengineers
PRO
4
280
Goss: New Production-Ready Go Binding for Faiss #coefl_go_jp
bengo4com
0
1.1k
Featured
See All Featured
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
283
13k
Documentation Writing (for coders)
carmenintech
73
5k
Art, The Web, and Tiny UX
lynnandtonic
302
21k
The Pragmatic Product Professional
lauravandoore
36
6.8k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.4k
What's in a price? How to price your products and services
michaelherold
246
12k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.5k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.6k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Transcript
@stefanjudis Playwright can do this?
Does anyone remember this friend?
Or this one?
@stefanjudis stefanjudis.com | webweekly.email Heyo, I'm Stefan! checklyhq.com GDE |
Playwright Ambassador
webweekly.email
The idea of end-to-end testing was great!
But it was terrible.
Tests were slow, hard to write and fl aky.
We run the tests on demand. My colleagues & I
We gave up. :/ My colleagues & I
Things got a lot better
Playwright is cross-everything
Playwright is cross-everything
Run your tests in VS Code
Very solid typings
More than a browser control / / @ts - check
import { test, expect } from "@playwright/test"; test.describe("navigation", () = > { test.beforeEach(async ({ page }) = > { / / Go to the starting url before each test. await page.goto("https: / / playwright.dev/"); }); test("main navigation", async ({ page }) = > { / / Assertions use the expect API. await expect(page).toHaveURL("https: / / playwright.dev/"); }); });
Easy to parallelize npx playwright test - - workers 4
/ / playwright.conf i g.js import { def i neConf i g } from '@playwright/test'; export default def i neConf i g({ workers: process.env.CI ? 2 : undef i ned, })
Built for quick execution const button = page.locator('button') await button.click()
await expect(button).toBeHidden() Auto-wait and web- fi rst assertions make waitFor statements redundant.
A very fast release cycle
Let's have a look!
Auto-wait Web- fi rst assertions Screenshots Test runner Retries Tracing
VS Code extension Inspector Debugger Codegen Image Snapshots Native UI
Weekly Playwright tips youtube.com/checklyhq
There's no silver bullet when it comes to e2e testing...
... but Playwright is a stellar solution!
Treat your UIs like your APIs.
APIs are measured with the number of nines — 99.999%.
Your entire application should be tested all the time!
Account create Account login Account update Account delete 99.999% 99.1%
99.8% 99.94% Stellar frontends with con fi dence
blog.checklyhq.com/how-playwright-can-monitor-third-party-resources/
End-to-end monitoring should be your safety net.* * Your future-self
will thank you!
Start shipping with con fi dence! * Your future-self will
thank you!
@stefanjudis www.stefanjudis.com webweekly.email Thanks!