Last night I got an emergency email from one of my clients. A new section of their website wasn’t working correctly. I quickly checked the site and discovered that a new feature that had been implemented a few days back was malfunctioning. I looked through the code, but everything seemed fine there. I updating any associated plugins with the newest versions, but that didn’t fix it either. Then I discovered the issue.
The new feature that had been released a few days prior had everything setup correctly except for the final connection of the data to a 3rd party service. A very small but very important step. I make the fix in 5 minutes and the issue was solved.
Afterwards I felt frustrated that I had let something like that slip. I tested the new feature before launch, but had failed to test that particular integration. I had assumed that it would just work.
My new motto: testing, not assumptions.
When you add a new feature to your site, whether a new plugin, new form, or a whole new shopping cart experience, make sure you test the entire chain of events. Don’t assume that just because it worked on your development site that it will also work on the live site.
Test New Features
- Submit data through the form and make sure the notifications and confirmations are behaving as they should.
- After installing a new plugin turn on WP_DEBUG and see if there are any errors that show up. Even if there are none, test each piece of functionality of the new plugin to make sure its working correctly with your site. Do not assume that the plugin will “just work”, test it out to make sure.
- Go through every step of the e-commerce checkout experience on your site and make sure each screen displays the correct data and functions the way it should. Try different scenarios to see if you can it not work. If it works even when you try to break it, that’s a good sign.
Your Site is a Unique Use Case
With the proliferation of quality plugins and extensions on the market today, we expect that when they are installed on our site they will work. As much as I wish that was always the case, it will pay of in the long run to test each piece of functionality of your shiny new plugin. Plugin authors try to make their code as compatible as they can, but it is difficult to test for every use case on the internet.
Don’t assume a new feature will work, test it to make sure.