A Best Practice for Website Data Backups and QA Testing

Two critical, yet often overlooked, aspects of website creation and management involve testing and backups. Often taken for granted and not included as part of the regular production cycle, these two tasks can make a world of difference. Take quality assurance (QA) testing for example.

Many web designers/programmers and businesses have the attitude that their website is running fine today and will continue to do so in the future – not taking into account changes in the environment including new browser releases, updated operating systems, hosting infrastructure changes, monitor and browser resolution changes and other frequent changing variables. In order to stay on top of the changes, and to ensure that revisions, updates and new features to a website function correctly, it’s vital to have a QA process in place. QA testing includes several aspects, starting with cross browser testing from a developer’s PC.

This test should include all major browsers (IE, Firefox, Chrome and Safari) and should include the most current browser, along with the two most recent versions. In addition, testing should be performed on Windows and Mac PCs to ensure all site visitors experience is consistent. For sites that offer mobile-specific versions and other sites in general, testing on mobile devices or emulators should also be performed. Once the browser tests are complete on the designer/developer PCs, the changes are ready to be updated to the QA environment. QA testing should be performed on a web server that mimics the production environment. This can be on a local server or in a development/testing environment on the production server. The purpose of the QA site is to be able to fully test out and preview site changes on the same platform as the live website.

While localized testing will identify issues with site layout, display, etc., it may not alert you to issues with coding. Testing site changes against the actual production hardware, software and databases will provide immediate feedback as to any issues. Once thoroughly tested in the QA environment, the code and design changes can then be migrated to the production directories. Data backups should be included as part of a company’s QA and recovery process. In the event of a catastrophe or loss of data, having backups will prove invaluable.

Backups should consist of a website’s content, the graphical design theme or layer, along with the website’s database. Backups of the database should be performed at least once per month, while the content and design should be backed up whenever updates are released. Having both automated and manual processes in place will provide an added level of security, as will having backups store in multiple places on multiple machines. Hard copies on CD or DVD store offsite are also recommended in the event of theft, fire or other physical loss in the office or data center. Both rigid QA testing and data backup procedures are key to releasing clean code changes and being prepared to quickly recover from disasters.