quality assurance testing
Testing is important for all software, but with so many browsers, browser versions, platforms, and devices – each with different ability to display accepted standards – website testing is crucial. Accuracy and efficiency are the keys to a cost-effective testing solution, especially in an agile development environment.
Effective testing requires:
- A keen eye, along with an acute attention to detail.
- A scientific approach, isolating variables and testing in an orderly fashion, leading to reproducible issues. Orderly testing often includes a very disorderly, unanticipated click sequence. There's no telling what users might do.
- Testing (across browsers, devices, etc,) for layout, functionality, links, and content (images, text, proofreading, etc.) as compared to design comps and for consistency. Testing custom CMS (content management system) just as for any site, and also for correct placement of assets on its corresponding public-facing site.
- Regression testing where/when appropriate.
- Excellent communication skills (especially written) to concisely and accurately describe issues to all team members, regardless of technical expertise. This usually includes step-by-step/click-by-click instructions to reproduce the issue, along with screenshots.
- Prioritization of issues, often coordinated with the PM (project manager) or other key member(s) of team management to some degree. With 20 years of programming experience (and self-QAing), the context is already clear.
- Suggestion of possible causes of issues, as well as implementation of fixes, depending on the team context. The QA engineer is often not permitted to do so (and with good reason).
Bug tracking & communication tools:
- Bugzilla – The easy-to-use tool (for all team members, regardless of technical expertise) used to log, categorize, track, prioritize, update status of bugs/issues, assign to appropriate team member(s), and to notify appropriate team member(s) along the way.
- Custom spreadsheets – Acceptable for smaller projects with smaller teams or for teams with technology-challenged members. These generally include many of the same parameters used in Bugzilla, but without automation of any kind.
Combining the testing role with documentation writing and training results in a very efficient resource. The common base is learning all details of the software involved.