QA Services

TPS is committed to providing high-quality solutions to its clients and as such we offer a structured QA process. We take a very serious approach to the testing process and take pride in our quality assurance of the solutions that are developed by our team. We can also apply our vigorous QA review process to your existing or new applications that may not have been developed by our team. The goal of a QA process is either to prevent or uncover issues as early as possible in the development process. Errors caught in design are much less expensive to remediate than errors found post-production in a live system. The current techniques and approaches applied to software testing help identify and prevent occurrences of problems associated with weak functionality, low reliability, poor productivity, lack of scalability and other defects/bugs in the application(s). Our strong belief is to form and apply a QA team in the initial stage of the project; this reduces the risks of fixing global bugs in later stages. The QA engineers are involved in the development process right out of the gate: they are provided with available documentation, they get acquainted with the business processes that are to be implemented in the project and the technical specifications requested by the client. On the basis of the provided resources our engineers develop a testing plan that meets all the described requirements. It defines the scope of testing of the product and documents the process of the Quality Assurance Process.

Strategic execution of testing

The application of up-to-date techniques and approaches and performing the right kind of test at the right time are key to our testing strategy. The QA department performs the following types of testing: functional testing, security and access control testing, installation testing, system testing, user interface testing, cross-browsers testing, integration testing, regression testing and performance testing.

Defects registration and tracking

We use dedicated systems to record the defects identified in software applications. They allow tracking the life cycle of a bug from the moment of its detection up to the moment of its elimination from the product. All the members of the team involved in the project development process have access to these systems with the appropriate rights assigned to them. The client is a key participant and can follow the testing process as it progresses and enjoys a full awareness of quality changes occurring in the developed application.

Testing process automation

At the stage of regression testing, automated testing tools are used in order to save time and resources and to raise the quality of testing. The automated testing tools examine the software on the basis of the scripts developed by the QA engineers and generate an informative report on the received results for further analysis. This also supports future releases/changes to the application as the regression test can be re-applied at will, shortening future test cycles.

Testing process documentation

The results of version testing of the developed system are provided to the client in the form of accompanying documentation. Check lists are created for every new version. Detailed test scripts are used to give a step-by-step description of business process testing. Full reports on the performed work and results of testing can be developed at the customer’s request once the development process has completed.

Types of Testing Offered

Functional/regression testing
API testing
Performance/load/stress testing
Compatibility/configuration testing
Usability testing
Security testing
Data migration/conversion testing
Scope
Whether you need ad hoc testing, automated testing, or just application profiling, our engagement implementation roadmap can address every need in your testing life cycle.
Test Planning: Test strategy, test objectives & approach.
Test Analysis & Design: Analyze functional requirements, make automation decisions, design test cases, design test environments.
Test Environment: Install HW, SW, test tools, and perform a smoke test.
Test Implementation: Develop test scripts and create test data.
Test Execution & Reporting: Execute test cases and test scripts, test report & metrics, and defect management.
Test Completion: project acceptance, delivery of testware, postmortem.
Project Management: Tracking and control of testing processes, overall managed testing initiatives.
Configuration & Change Management: Version control, source control, change management, configuration items.