This world demands perfection, in which mistakes are least tolerated as some mistakes can lead to grievous after effects.

No customer wants to accept a product with poor performance. However, the absence of mistakes or errors in software is a fallacy. It is necessary to ensure that the software does not end up as a major failure in terms of delivering its core functionalities. This can lead to tonnes of customer complaints after the software reaches them and all the efforts from the team to develop the software will be wasted.

Therefore, software testing allows the testing team to check on all aspects of software before being deployed to the customers. And should the testers are able to find any errors pertaining to the system, the developer gets an opportunity to rectify it. 


Development of Test Case

During the development of Sqayy, the QA team was assigned to create test cases that match the software requirements without having to wait for a single code from the developer.

However, it is a unique experience for Sqayy. The test case for the system is written immediately after a few modules have been developed. 

The test case is provided to testers so they can validate that the solution matches the requirements. This includes a series of steps executed on Sqayy using a predefined set of input data as well as a predefined set of outputs.

Below are some activities that involved in test case development in Sqayy. 

Diagram 1 The different activities that form part of Test Case Development.


Usually, someone from the QA team who understands the purpose and requirements that the test case provided will be responsible to develop the test cases. Software requirement is either a functional or non-functional needs that have to be implemented in the system.

For example in Sqayy, the functional requirements for when the users select “View Exam Slip”, they must be able to view the students’ exam slip with all the details appeared correctly. Meanwhile, a non-functional requirement is when the users are able to view any reports within 5 seconds.

The testers must fully understand how the system works and what to expect from the system. Other than that, the tester should define the approach taken in developing the test case by pointing out possible scenarios for each test case. It is better to avoid noting the number of test cases that correlate to the quality of testing when doing the test. 

The development of test cases should be completely documented and these test cases should undergo all kinds of reviews such as self-review, peer-review and review by the supervisor in the team. Test reviews are a good practice of communication and collaboration between team members.

Appropriate feedback should be incorporated in the test cases. For instance, getting test scenarios approval from the development team can ensure that both teams are synchronised on the understanding of the requirements. This also helps developers to understand scenarios when writing codes.

Test procedures are a series of execution steps to follow for testing a particular feature. Same tips applied when it comes to writing effective test procedures which are to understand how the software works. It includes the understanding of the requirements as well as the behaviour of the system before proceeding with the testing activities accordingly.

Writing test cases can be a time-consuming activity. However, it will become very beneficial to future teammates as well as a good source of truth for how the system works.  A good test case requires the tester to think thoroughly from different ways of validating features.

While doing ad-hoc testing, one may neglect or skip functionality. Therefore, having a bunch of test cases is important and useful for every person involved in the development such as the development team, as well as the management team.

Here at Vialing, the stability of Sqayy is our main goal. The reputation and persistence of our company depend on our customer satisfaction. However, making a mistake is not a crime but our team will always be responsible to find solutions for maximum damage control. Your satisfaction is our concerns.