The things we’re asking JavaScript to do are getting more and more complex by the day, and that means that manual testing — the good old “click around and make sure nothing’s broken” — is becoming less and less effective. If you’ve run into this in your work, you probably know that you ought to be doing automated testing, but if you’re like most front-end developers, then you probably don’t have a good idea of where to start.

Testing’s been on my mind quit a bit since I wrote A Baseline for Front-End Developers — testing was among one of many skill sets I identified as being key to being a productive and effective front-end developer these days. The resources on the web are surprisingly limited — one of the best is a post by Ben Cherry from way back in 2010 — and so I wasn’t surprised by the answers when I asked people what was making it hard for them to get started with testing. You can see the whole thread here, but the conversation broke down into a few high-level topics:

  • Which tools do I use?
  • Will testing slow me down?
  • How do I write testable code?
  • What do I test?
  • What do “good” tests look like?

If you’ve decided it’s time to bring tests into your workflow, but you’re struggling with answering these questions I’m excited to announce that I’ll be leading a two-day training, Writing Testable JavaScript on Sept. 6-7 at the Bocoup Loft in Boston. During the course, we’ll:

  • talk about how testing can improve your development process
  • look at patterns and practices that result in testable code
  • refactor common but untestable code patterns
  • explore how to write quality tests in both the BDD and assertion style
  • discover how to test code that depends on interaction with the server
  • use grunt to automate our testing and incorporate it into our development workflow

Getting started with testing can be rough — I freely admit that I needed a helping hand or three, and there was a whole lot that was confusing at first — but it turns out that it’s fairly straightforward (and possibly a little addictive) once you get over that initial hump. This training will help you do exactly that.

Is this a good fit for you?

This training is for moderately experienced JavaScript developers who are comfortable with git and the command line. If you’re wondering whether this training is right for you, I’d encourage you to set up and work through js-assessment, a test-driven tool I developed for evaluating your JavaScript skills. Participants in this course should be able to get most (if not all) of the tests to pass.

If you have any questions about whether this training is a good fit, drop us a line at training@bocoup.com and we’d be happy to talk with you!