~/talk

Testing Javascript: Building JavaScript applications you won't hate

Talkat Laracon AU 2019 · on Thursday, 2019-10-31· [javascript, testing]
slides:none on file

Concrete takeaways: use static analysis (ESLint, TypeScript) to catch errors cheaply, write fast unit tests with Jest and isolate rendering from state, prefer Redux-like stores to reduce component interaction tests, use snapshots sparingly, run mutation testing with Stryker locally to find weak tests, and reserve Cypress end-to-end tests for a few core workflows. 100% snapshot coverage is deceptive and run mutation tests locally not in CI — contract testing (Pact-like) protects front end/back end contracts.

AI-written summary · about

  1. 0:00Intro
  2. 0:31TESTING JAVASCRIPT BUILDING JAVASCRIPT APPLICATIONS YOU WON'T HATE
  3. 1:53WHY DO WE TEST?
  4. 2:12REFACTORING
  5. 3:29WHAT DO WE TEST?
  6. 4:19INTEGRATION TESTS ARE A SCAM
  7. 4:48TESTING TOOLKIT
  8. 5:10STATIC ANALYSIS ESLINT & TYPESCRIPT
  9. 6:20TESTS ARE EXAMPLES CORRECTNESS IS HARD TO PROVE FROM EXAMPLES
  10. 6:37TYPES DEFINE CATEGORIES CATEGORIES CANNOT PROVE CORRECTNESS
  11. 7:20UNIT TESTING JEST
  12. 8:03INTEGRATION TESTING JEST
  13. 8:21VUEX / REDUX
  14. 12:09MUTATION TESTING STRYKER
  15. 14:58E2E TESTING WITH CYPRESS.IO
  16. 16:35CONTRACT TESTING PACTIO
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.