~/talk

Rethinking Appium’s Code Base

Talkat SeleniumConf Austin 2017 · 2017-04-04..04-06· [nodejs, testing]
speakerdeck:moizjv
slides:none on file

Appium 1.5 rewrites the monolithic Node.js server into a modular set of NPM packages, replacing callback-heavy code with ES2015 async/await, moving drivers (iOS, Android, Windows, XCUITest) into distinct modules, and adding per-module CI, unit/integration test suites and module-prefixed logging so logs identify the exact component. The rewrite boosts contributions and maintainability but creates coordination overhead — the team split into 50 small NPM modules and found multi-repo changes and git history fragmentation painful; roadmap moves to a base driver plus per-driver repos.

AI-written summary · about

  1. 0:00Intro
  2. 0:44Agenda
  3. 2:02What is Appium
  4. 3:12Problems with Appium
  5. 4:57Developer Documentation
  6. 6:15Not Modular
  7. 7:58JavaScript
  8. 10:04Test Organization
  9. 10:55New Architecture
  10. 11:35Package Overview
  11. 13:34New Shiny Jaso
  12. 15:30Testing Pyramid
  13. 17:23Mistakes
  14. 21:10Lessons
  15. 23:40Contribution
  16. 24:58Questions
~/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.