Centre For Design, eZ Publish Case Study - Testing
Leaving testing until the end of the project is usually a bad idea, because making changes
at that stage is far more time consuming and expensive. We perform testing as a part of
each stage of the project to minimize the chance of things going wrong later.
Requirements
We tested the requirements by reviewing them with the client and then with other staff
within the organization that published content on the existing site. Different people may
have different issues that their manager might not be aware of. Talking to more than one
person gave us a more rounded and complete view.
We then thoroughly analyzed the existing site to ensure that the functionality set out in
the requirements would cover all of the content the client currently published.
Specifications
Normally a specification document is quite technical and difficult for clients to review.
We ensured that the specification document had the visual representations such as
wireframes as well as technical details, so that the client was able to understand and
provide meaningful feedback. We also got examples of real content and used them as a
part of the specification. Using dummy data or made-up examples increases risk. With
real examples we were able to pick up issues such as long titles for content and made sure
that the datatypes we applied were correct.
Implementation
The majority of the testing was done with the HTML prototype to ensure that it not only
accommodated the information design, but also worked in the required browsers and
operating systems for the specified screen resolutions (discussed in the HTML Prototype
section).
Functional Testing
Once the site was finished, it was simply a matter of going through every element of the
site entering several examples of each content type into the system and cross checking
against the HTML prototype to make sure that the CMS produced exactly what the
client expected. As the HTML used to create the prototype was the same HTML used to
create the templates in the CMS and that had already been tested, we minimized the risk
of errors.
Content Population
This is the final test of correctness and functionality. After the training sessions, we
provided the client with access to the site for content population. During this phase, we
used a web-based issue tracking system (Mantis) so that the client could record any issues
that arose during content population. Before putting the site live, we ensured that all the
issues were resolved.