Introducing Taiko: Driving Your Web Browser Programmatically

As a web programmer, I've always wanted to drive my web browser programmatically -- open this page, fill in that field, click on that button over there; all driven by JavaScript instead of a pesky human. Past solutions were flaky at best, because they were third-party, aftermarket attempts to add functionality to a browser that didn't support it natively. Modern browsers now offer this level of programmatic instrumentation baked-in. All we have to do is start using it.

In this talk, Scott Davis (Principal Engineer, ThoughtWorks) introduces you to Taiko -- a free and open source browser automation tool written in JavaScript. You'll learn how to install and open the NodeJS-based Taiko REPL, allowing you to start exploring the simple, expressive API right away. Next, you'll save your REPL session as a JavaScript file that can be run directly from the command line (or your test suite, or your CI/CD pipeline). Finally, you'll see how to intercept requests for testing purposes -- either by blocking them completely, modifying the results as they come in, or swapping out the results with your own mock data.

Taiko uses the same Chrome DevTools Protocol that you use when you open up the Developer Console in Chrome, run a Lighthouse Audit, or use the Puppeteer API, so you know that it's stable. Taiko ships with its own known-good version of embedded Chromium, eliminating integration and version-mismatch issues. Whether you pair Taiko with Gauge for User Journey Testing or use it alone to drive your web browser programmatically, Taiko is a powerful new tool for the serious web developer's toolkit.

View Slideshow