Customer is a leading manufacturer of software solutions for effective IT infrastructure management. Company provides IT and enterprise service management solutions that transform the productivity of IT agents, improve the end-user experience, and add value to the entire organization.
JET BI team performs JAVA and Salesforce declarative and custom development, integrating the Salesforce CRM system with several solutions including customer’s site, DealHub, Salesloft, optimizing existing integrations with 6sense, Zoominfo, Goldcast, LeanData, Marketo, and BrightTalk, consulting on existing processes.
There was no business analyst on the project, which led to a different understanding of the product requirements and additional questions at the testing stage, as well as further changes or additions to the requirements. All test documentation was stored in google docs. A large number of test cases and a fuzzy structure made it difficult to update them, as well as to find the necessary information.
We have found a point of growth here. The main task was to improve the testing process on the project, prepare clear and structured test documentation, and align software testing with the overall development process.
JET BI process set up
- QA engineers become familiar with the product and goals immediately after receiving the requirements for new subprojects. QA engineers need to delve into the logic to be able to understand all the cause-and-effect relationships and specify the requirements even before development begins. If discussion is necessary, additional meetings are organized with the team and client to clarify the logic and determine the test flow.
- For each subproject lasting more than a month, a detailed test plan is created. The document defines the strategy and scope of testing, helps to determine when to start and finish testing, and contains risks that may affect test results and project end date.
- Test cases for subprojects are prepared before or during development as soon as new requirements are available. This helps to improve the quality of the project by defining gaps in product requirements and discussing the main points with the client and the team.
- Test Management for Jira- XRAY has been configured on the project. All existing test documentation (more than 700 test cases) has been moved to XRAY, linked with appropriate tasks. This helps the team and the client track the test coverage, and testing process and track the status for each test case. All test cases are grouped by modules (subproject/functionality). For each module, a Smoke Test is prepared.
- Testing starts early in development, so the team can identify and fix problems early. Quality assurance is essential when it comes to frequently changing requirements. Every time the client modifies the requirements, our QA engineers conduct testing to identify logical and functional defects. This improves the overall quality of the software product.
- Testing is performed in a separate environment where the client can also perform acceptance testing for major functionalities.
- QA engineers conduct functional testing, exploratory testing, user interface testing, and load and stress testing. The project is ongoing and all the mentioned activities are repeated during each subproject. The team also performs negative testing to find more defects in the product. In addition, each subproject includes smoke/regression testing before the release of new functionality.
- All complex functional errors and incorrect behavior of the system are discussed with the developers, and some with the client, to better understand the essence of each problem and how to fix it / check the fix.
- Each tested task is closed with a detailed comment from QA about how the functionality works with video recordings or screenshots. This allows the client to see the result of the work done.
- As a result of functional testing and its readiness for production, Test Result Reports are prepared by the QA team for every subproject finished.
- Going QA on vacation or leaving the project creates a high risk of knowledge loss. Therefore, for faster immersion of employees in the project, videos with information about the main functionalities are recorded, which saves time on knowledge transfers.
- Through well-established communication and early involvement of QA in the process, the team manages to find any inaccuracies in the requirements even before the development starts.
- All test documentation is well-structured and easy to find, available for the team and client. The search is more simple, coverage can be visualized. The time that should be spent on Reports preparation is reduced.
A clear collaboration structure and effective communication between all team members involved in the project help to cope with the challenges posed by changing requirements and time constraints. Our QA specialists are always active and the client welcomes all initiatives. Communication is well established, so both teams can be sure they can rely on each other.