Prior to providing the quality assurance service itself, we examine all the requirements of the application, customer's environment and specific business needs. This allows us to select the most appropriate testing types in order to render cost- and time-effective service.
Performance testing emulates required conditions and verifies how well the system remains responsive and stable under various workloads and conditions, such as speed, scalability, resource usage. Load tests help to check the system capabilities to tolerate high loads of user requests. We create and carry out load test cases for web and client-server applications.
These testing types are vital when it is necessary to check how the solution performs in different environments, under various configurations of hardware, software, operating systems, networks and so on. We have enough resources in our QA lab to create any environment needed for comprehensive compatibility/configuration testing.
We examine packaged and distributed applications on the subject of correct installation and deployment workflow and further flawless performance of solutions. Portability tests help to check whether the system can be transferred to another environment seamlessly. The following portability requirements are tested: processor speed, disk space, monitor resolution and other.
Volume testing is important for applications that constantly deal with large amounts of incoming data. Stress tests help to examine how the system behaves in such stressful conditions as shortage of memory or disk space, DoS attacks, peak loads. It is essential to identify and correct the system weaknesses in advance in order to avoid crash and data loss in the future.
Any application should be protected from information leakage, cyberattacks and other malicious breaches. We check cookies substitution, SQL, HTML/DHTML injection, password safety, backdoors in code, access permission settings, encryption of critical data, firewall settings, and many other parameters.
This type is recommended if the application is aimed for multilingual audience. We check the linguistic and cultural aspects of the systems in GUI, system interactivity with users, messages and errors display, adherence to specific standards and norms.
Technical documentation review is a must for any project. It helps to identify all possible inconsistencies and missing requirements before they affect the code. We follow our internal checklists and guidelines and guarantee high-quality reviewing.
To assure the best user experience and engagement, we also thoroughly examine graphical user interfaces for web, desktop and mobile apps. The resulting attractiveness and ease of use of any software product primarily depends on a well-designed and accurately tested UI. We perform manual and automated UI testing.
These two types are closely interrelated. While functional testing aims at verification of each single function of the system, GUI, APIs, databases, client-server interactions, regression testing checks whether any modification in the system doesn’t result in regression of other functions. Regression testing is especially vital in case of significant software enhancements, patches and configuration changes and right before the product release.
By augmenting automated testing, bugs are discovered faster, which allows to save time and money. However, not everything in the application can be automatically checked as there are some specific cases that need thorough manual checking. We know which approach to select per case, and which tools for test cases generation and execution, bug and task reporting to apply.