In today's technological world, where user expectations and design requirements are constantly changing, the role of a QA tester becomes crucial. I recently had the opportunity to participate in an exciting project with a German client, where I was responsible for manual testing and overall product quality assurance. This project was a demanding challenge but provided many valuable lessons I would like to share with you today.
The beginning of the adventure with the project
I joined the team as a QA tester when the SPLINT Feedback project was underway.
At this stage, the most crucial task was actually to get to know the project and plan further work:
-
The first step was to get to see the documentation, application architecture and functional requirements;
-
I had to take into account that the analysis of requirements, design and planning was still ongoing;
-
the project was not yet stable enough to introduce automated tests;
-
However, the already created BE and FE allow manual testing.
Organizing the work helped me better understand the project and plan an effective test strategy. My experience working on the SPLINT application, of which SPLINT Feedback is a sub-product, proved helpful.
Tests, tests, tests..!
Testing was an integral part of the application development process. We focused on the highest-priority tasks, which were accepted and sent to test environments. This allowed us to examine the functionalities closely, analyse their usability, and make the final changes by end users' expectations. How did it look in this case?
-
The entire testing process was based on unit tests (performed by the development team) and manual tests for which I was responsible;
-
The application consisted of two modules: SPLINT Feedback for Teachers (part of the web application) and SPLINTY—PWA for students. When planning the tests, I took into account not only the needs of both groups but also the need to broaden the scope to include tests on physical mobile devices.
-
Our main goal was to enable students and teachers to jointly develop annual goals and cooperate on achieving them through self-assessment and feedback processes. To ensure that everything works as it should, we, the dev team, often assume the role of end users.
-
During the testing stage, a solution did not fulfill its intended role, and we had to modify it. In such situations, the tests' conclusions allowed us to create a new, more adapted solution.
-
From the application development perspective, pre-release and post-release testing were very important. The test environment, a copy of the production environment, significantly accelerated the smooth release of the latest changes and allowed me to work independently and engage the team.
-
To ensure the app was “production ready” at the project's end, we ran acceptance tests with external testers. This allowed us to confirm our previous choices and catch any discrepancies.
Our approach, based on iterative testing and adaptability, was crucial to success.
Communication is key
Even the best tests are useless if there is no communication within the project team. Direct contact with developers, product owners (POs), and customers, as well as using tools such as Jira, allowed me to constantly update my priorities and adjust the testing process to the project's needs. Transparency and shared responsibility for the product's quality helped create a strong team and allowed for agile change implementation.
Summary
The SPLINT Feedback project developed quickly and with great flexibility. Thanks to a small, closely related team and constant communication, we could focus on critical aspects of testing. Getting a good grip on the project at an early stage allowed for early detection and prevention of defects, which directly contributed to shortening the development time, reducing costs and improving product quality. Working in an agile environment allowed for quick modification of tasks and improving solutions that the tests indicated were worth refining. Communication was vital, and thanks to the shared responsibility for the quality of the product, our small group had the freedom to make decisions. We analysed the test results, identified errors and adapted the application to users' needs. Most importantly, the conclusions from this project will be valuable to us in future endeavours, and the knowledge and experience gained will have a lasting impact on our team.