An employee relationship management platform was designed for HR managers to increase staff engagement and improve business efficiency. It allows users to fulfill tasks leveraging a single solution — from assessing personnel performance to publishing company news.
However, the organization didn’t have QA and testing activities in place, which caused problems with software quality.
Firstly, two a1qa engineers were tasked with enhancing QA practices and addressing blockers and critical defects throughout the pilot project. Secondly, it was crucial to increase test coverage and automate the tenant management process.
After the software was released, each end user worked with a customized version of the platform. The lack of dedicated QA teams and the frequent introduction of new functionality created risks, threatening the product’s success. To address these challenges, a1qa began building QA processes from the ground up, focusing on improving quality.
One of the first steps was helping the client choose an optimal toolkit to organize QA processes effectively, tailored to the project’s needs. JIRA was selected for issue tracking, and Zephyr was chosen for test management, ensuring seamless integration and scalability as the project evolved.
Selecting the scope of functionality for testing was next in line. As new features appeared swiftly, together with the client, the specialist determined critical flow and most stable features to verify in the first place.
First, the QA engineer developed a full functional test to perform positive and negative checks and test logical chains between web app functions and a compatibility test for a mobile version.
Rapid functionality growth was followed by a need to introduce test automation to reduce labor costs and speed up testing cycles. The specialist got down to test design, described test cases, launched them manually, and selected 10 of them to be automated as a critical path. Having the necessary scope, a QA automation engineer selected a technical toolset matching customer’s standards:
Next, the QA automation engineer automated 10 test cases and configured a test execution pipeline. All tests were created for one tenant only.
Setting up the QA process was followed by further broadening test coverage.
As for functional testing, a1qa enlarged the testing scope and verified less critical features of the already tested tenant. The specialist proceeded with new feature and regression testing, defect validation, generating detailed reports on testing results. Close collaboration with the client’s customer support head helped track defects spotted by end users and analyze their root causes.
a1qa initially focused on running existing automated tests on other tenants while progressively increasing test coverage for the highest-priority functionality. The ultimate goal was to fully automate the tenant management process, including their creation, deactivation, deletion, and running test cases on both newly built and existing ones.
To streamline the process and improve efficiency, the QA engineer developed testing scenarios that accounted for the differences between tenants while utilizing shared logic.
Next, the QA automation engineer implemented shared logic through reusable, universal scripts while isolating specific differences as custom implementations.
To effectively handle multiple tenants, the QA automation engineer designed a test automation framework and took the following actions:
a1qa tested tenants containing the relevant data and empty ones. The QA process for the latter represented a challenge, as after creating them, the engineer had to input big data amounts into them before testing.
To streamline this process, the specialist developed separate automated tests for entering data that simultaneously checked its proper generation and integrity. Automated tests were applied to verify functionality responsible for managing tenants and data generation.