Before you shift traffic to a new site, you’ll want to make sure its functionality works as expected, and that it is as performant and secure as possible. Part of this will happen continuously during development, in a non-production environment, but tests just before launch are also recommended.
When testing a site prior to launch, we recommend you run all tests on your production environment. Walk through your site using all the functionality of your dashboard, including plugins that you and your team will use on a regular basis. This could include creating test posts and widgets.
In addition to testing backend (server and wp-admin) functionality, you’ll want to look at the frontend (desktop and mobile browsers) to ensure it functions as expected. If anything appears broken or is not working as expected, you might want to take a deeper look at your output and see which errors or warnings need to be addressed.
At a minimum, we recommend the following tests:
- Create a post as a user with the “editor” role
- Create a post as a user with the “author” role
- Upload an image to the media library
- Add that image to a post
- Edit a post
- Delete a post
- Create a new user, and log in as that user
- Delete a user
- Change a user’s role
- Add a widget
- Modify a widget
- Ensure search results work as expected
- Verify settings are correct for external services like Google Analytics, Twitter, Facebook, etc.
- Verify that third party plugins work as expected.
- Verify any custom features of your editorial workflow
- Check that 301 redirects, if any are set up, work
- Ensure that the browser is loading pages in a reasonable time and that images are not being resized from very large to small (this wastes user bandwidth and affects their experience)
Normally, load testing is unnecessary. The VIP platform is designed to scale its resources under most conditions. Prior to initiating any load or stress testing, please open a support ticket with us to discuss your objectives and test methodology.
VIP recommends that you analyze your site’s performance in New Relic prior to and during the period after launch and make adjustments where necessary. Portions of application code that may not perform under load can be identified by looking at individual requests or a history of activity.
Also, you could make use of front-end analysis tools in your browser, or via webpagetest.org, to identify potential browser performance issues.
General Guidelines for Load Testing
- Tests should be stopped as soon as the fail threshold has been achieved.
- Traffic should be increased gradually (ramped-up) and take into account that URLs that have been saved to the edge cache will have a much faster load time for future requests (hits).
- When determining the number of concurrent users/second to test with, please take into account that on average only 1/10th of the user requests would reach the origin datacenter. To make the test more realistic, use the total number of requests which should reach the origin datacenter.
- Send the requests without any special cookies that might invalidate the caching at Edge.
- Ideally, tests should come from different locations.