Example of checklist-based testing
Even for many seasoned QA engineers, checklist-based testing is still a relatively new concept, and what better way to get a deeper understanding of it than with the help of an example? For the purpose of this example, let’s create a checklist from scratch to test our company website, https://qarea.com/.
The first thing to do here is to identify the main components, the so-called modules and submodules, based on their benefits for the business and for the end user.
Besides the standard elements such as Header, Homepage, and Footer on the https://qarea.com/ website, there are also some main elements — these are coincidentally our modules, which have their own submodules. Another noteworthy element are the multiple contact forms placed around the website: they are meant to attract new potential customers for the company, which means they need to be tested with particular attention to detail.
Given everything we’ve said above, a high-level testing checklist for https://qarea.com/ can look like this:
ID | Name/Idea | Test Result |
Environment1 | Environment2 |
1 | Header | | |
2 | Homepage | | |
3 | Company | | |
3.1 | Pricing | | |
3.2 | Career | | |
3.3 | About Us | | |
4 | Services | | |
4.1 | Design | | |
4.2 | Development | | |
4.3 | Testing & QA | | |
5 | Team Extension | | |
5.1 | Front-End | | |
5.2 | Back-End | | |
5.3 | Mobile | | |
6 | Industries | | |
6.1 | eCommerce | | |
6.2 | Healthcare | | |
6.3 | Finance & Banking | | |
7 | Portfolio | | |
8 | Footer | | |
It’s also possible to expand this checklist to a low-level one, depending on the requirements and the available resources. For example, we can take the Homepage component and create the following checklist based on this element, adding supplementary elements, such as Additional information, to it if necessary.
ID | Name/Idea | Additional information | Test Result |
Environment1 | Environment2 |
2 | Homepage | | | |
2.1 | The “Hire now” button | | | |
2.1.1 | Verify that the “Hire now” button changes color while you hover over it. | 1. The “Hire now” button should become black. 2. Text should become red. | | |
2.1.1 | The “Tell us about your project” contact form should open after you click the “Hire now” button. | | | |
2.2 | “We Help With” block | | | |
2.2.1 | Verify that the “We Help With” block consists of 3 tabs: - Services;
- Technologies;
- Industries.
| | | |
2.2.2 | Verify that the “Technologies” link is underlined by default. | Underlining should be indicated with a red line. | | |
2.3 | The “Get in Touch” button | | | |
2.3.1 | Verify that the “Get in Touch” button changes color when you hover over it. | 1. The “Get in Touch” button should become red. 2. Text should become white. | | |
2.3.1 | The “Tell us about your project” contact form should open after you click the “Get in Touch” button. | | | |
And that is far from all the tests you can run all over the website to test its performance, UI, and other metrics. Creating a detailed testing checklist is going to come in handy multiple times and in more than one way for the whole team:
- QA engineers will be able to reuse it at the next stages of the testing process as it is or after expanding it according to their experience, as well as after the redesign of the whole website or its elements.
- Checklist-based testing is a far less time-consuming process than creating checklists and separately running tests based on them, given that you spend most of your time and effort on the setup stage of this test design technique. The only time you’ll need to invest more time and money into the same testing checklist is when the product undergoes significant changes.
- Testing checklists can be a great way to introduce junior QA engineers both to the testing process and the product itself. The company gets to save resources on training and can get the new engineers to work on real-life projects faster.