Skip to content

Instantly share code, notes, and snippets.

@searls
Created August 9, 2017 14:57
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save searls/d920316bc1cf6f3fadf2076464fbd8d0 to your computer and use it in GitHub Desktop.
Save searls/d920316bc1cf6f3fadf2076464fbd8d0 to your computer and use it in GitHub Desktop.
We gave this workshop a couple times last year, but never to a predominantly JavaScript or Node.js based audience (even though that's who the content was designed for). Nevertheless, it always went incredibly well, so we're excited to pitch it at Nodevember.

What to expect() when you're expect()ing

Abstract

Most people test their JavaScript, but many feel hamstrung by erratic, inconsistent, and redundant tests. New tools claim they'll save us, but test pain is rarely a tooling problem. Instead, this workshop focuses on test design, mapping participants' test antipatterns to real, practical solutions.

Description

Every day, brilliant programmers around the world write awful tests.

These days, most developers (finally!) test their JavaScript. In fact, many of us write so many tests we often feel overwhelmed by massive suites of erratic, inconsistent, and redundant tests. Worse, because tests play second-fiddle to production code, it can be hard to make the time to identify & address root cause problems before they metastasize throughout our projects.

I've been helping teams test their JavaScript for nearly a decade, and I've distilled what I've learned into 30 "smells"— indicators of potential test design problems, each paired with an example exercise. Attendees are encouraged to come to the workshop with their most painful test in hand and to share them with the group. Together, we'll collectively identify each test's root cause problems and how to address them in a systematic, repeatable way.

Notes

This workshop is unorthodox, because the content we've created could easily fill a week in a classroom setting. So instead of lecturing, we'll accept all takers to volunteer the test pain they're most accutely experiencing (verbally, by example, etc.) and map it back to one of the test smells in our catalog. Together, we'll explain the test pain, how to address it, and work through an example activity as a group.

This way, each attendee is guaranteed to have their most pressing testing questions addressed. Moreover, folks can tackle the exercises we don't cover independently after the conference. We've done this workshop a few times in the past, and it's been an incredibly rewarding experience each time.

[Personally, I've always really admired Nodevember and wanted to come down and participate. Given my ample experience helping people solve thorny testing issues in JavaScript (including Node specifically), I think this is the most valuable thing I have to offer.]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment