Websites exist for a long time now and they play a more and more important role in current society. When searching on how to test a website, I got very little hits. Most hits only dealt with performance or compliance, a good reason to write some more on website testing.
Every websites consists of one or more pages. When more pages exist, there usually are one or more design templates that give related pages the same look and feel. The templates should be reviewed to see if they meet the business requirements. Some suggestions for reviewing:
Does the template provide a spot for all the elements that are needed on the pages?
Are common elements identified (like navigation and footer)?
Are all elements mandatory (if not what should be displayed when it’s not filled)?
Does the template comply with style guidelines?
Of course it doesn’t stop with reviewing; the templates can be tested too. When you create a page based on the template, it should show the various elements in the intended order and format. When testing these templates you can make a decision table containing the possibilities of mandatory and optional fields. To see if the template really works, we need to put some content on the page. Play around with large and small texts to see how the template deals with wrapping and don’t forget to try some special characters too. If a content management system (CMS) is used to put content on the page, the CMS can be tested too. This may not be needed if it is proven technology, but we need to at least check the configuration of the CMS.
As I said, a page consists of various elements. Each element can be tested separately. Common elements like a search box, navigation bar, login box or footer links should be tested, since they appear on multiple (often all) pages. Do we need to test these elements on every single page? Well, if we want to be absolutely sure that it works on all pages, then yes. Luckily, testing the elements for one page in all the templates should give quite an accurate view already.
Most websites also deal with user specific content which requires you to login. This introduces the aspect of security testing. The OWASP site gives a lot of information on security. A lot of the testing involved with security is technical and requires practice. The simpler parts are close to functional testing. Authorization and authentication should be tested! For authorization use tables containing roles and rights and make sure to cover the combinations.
This leaves us with other non-functional aspects as performance, continuity and usability. I’m still thinking on doing separate posts on these subjects, so keep checking here.
The number of events that deal with software testing seem to increase. This globalisation is great news for the testing community! More and more opportunities to share knowledge and learn from others. Last year my presentation on how to test mobile apps got to several stages and this year the release of the book Cloutest provides some opportunities for presentation slots. A presentation on Cloutest has been accepted for EuroStar and for ChinaTest. Maybe some more events will follow.
Next to Cloutest, my stage appearances will focus around Agile. China is starting to go Agile and ChinaTest has accepted two Agile proposals next to my Cloutest presentation. These will deal on how to work as a tester in Agile teams and how to improve testing in Agile settings. The Testnet fall event also focuses on Agile, the proposal that got accepted for Testnet deals with Agile and outsourcing.
It’s great to have a lot of proposals accepted, now to prepare each presentation! For the Agile part, there are some basics that need to be dealt with in all the presentations, so let’s think about reusability 🙂 Working at Polteq provides a great setting to discuss about several testing topics. It’s great to get a lot of support and help. For Agile we recently started a discussion group, helping to see common problems and different solutions in Agile settings. Every meeting is an eye opener for me and I hope we will have a lot of informative meetings to come.
Last December I became a trainer for Certified Agile Tester (CAT). Following the course has been very intensive, but really great! Four full days of training, with a couple of hours every night to keep up with the provided material, followed by an exam. The effort paid off and I passed the exam, so since then Polteq can offer the training!
Giving this training feels great. Seeing how your students evolve in using Agile and getting more comfortable every day is very satisfying. This course actually has all the elements that I mentioned in my post on good courses. Every day starts with explaining the theory (and exam material) to the students alternated with discussions. All the students actively participate in the discussions, allowing them to learn from each other’s experience. Another part of the day is a practical exercise, where the students work together in teams to experience what working in Agile teams is like.
Not only the students are learning from this course. Every discussion we have, provides me with more examples that I will be able to use the next time. Tomorrow will be the last day of exam preparation and I want to wish my students all the luck with their exam on Tuesday.