Storybook can be really useful for a team developing a web app. But like any software, it’s prone to rot when left untested. On my current project, I finally have a good way to test it. Here’s how!
On a recent project, we used Jest to orchestrate the tests across our web app, which uses a combination of Puppeteer, SuperTest, and Enzyme for testing. Here’s an overview of how we wired up and tested each part of the app, the tools/libraries we used, and the orchestration we did to run all of the […]
Laravel’s Artisan CLI comes with a plethora of useful commands and functionality out of the box. Unfortunately, there’s one thing it doesn’t come with: an easy way to run different types of tests. On a recent project, our team had a desire to write Artisan commands that could run our tests, so we had one […]
Since the summer of 2019, WebdriverIO has fully supported the W3C WebDriver protocol (announced in this post). As part of upgrading to the latest v5 version of WebdriverIO, I decided to also switch over to using the W3C protocol for our tests that use Chrome / ChromeDriver. After switching to the W3C protocol, we found […]
On my current project, we’re using LocalStack in lieu of AWS for development and test. In this post, I’ll walk through how we’ve set it up and what we can do with it.
These days, it’s standard practice to run your unit and system tests with some degree of parallelism. When doing so, it’s important to ensure that the code being tested doesn’t interfere with other running tests. Usually, this comes down to the database layer. There are a few options for accomplishing isolation at the database layer. […]
When writing tests for a Node.js server, it’s common to test the database as well. (At least, one hopes.) Here are a few helper functions for testing a PostgreSQL database using Knex.
Releasing a new version of a mobile app can be a stressful process. The first few times you do it, your customer base is probably pretty small, so it doesn’t feel like a very big deal. However, after your user base grows into the thousands, the pressure really starts to build. The fear of releasing […]
It’s been almost a year since my posts on Excel workbook snapshot testing and PDF snapshot testing. Both of these have proven to be very valuable in our automated test suite and have allowed us to easily catch regressions, manually inspect the differences, and then update as needed. Another task on my current project has […]
If your software team develops multiple new features simultaneously, you need to be able to deploy and test them in isolation. The gold standard for this is to use Heroku’s review apps, which are temporary environments automatically spun up for each pull request. Unfortunately, the feature only works with GitHub; if you’re using another source […]