Testing is aimed at detecting the defects within a piece of software. But no matter how thoroughly the product is tested, we can never be 100 percent sure that there are no defects. We can only use testing to reduce the number of unfound issues.

There is no way to test all combinations of data inputs, scenarios, and preconditions within an application. For example, if a single app screen contains 10 input fields with 3 possible value options each, this means to cover all possible combinations, test engineers would need to create 59,049 (310) test scenarios. And what if the app contains 50+ of such screens? In order not to spend weeks creating millions of such less possible scenarios, it is better to focus on potentially more significant ones.

As mentioned above, the cost of an error grows exponentially throughout the stages of the SDLC. Therefore it is important to start testing the software as soon as possible so that the detected issues are resolved and do not snowball.

Depending on their purpose or industry, different applications should be tested differently. While safety could be of primary importance for a fintech product, it is less important for a corporate website. The latter, in its turn, puts an emphasis on usability and speed.

  • Unit Testing
  • Regression Testing
  • Black Box Testing
  • Integration Testing
  • Keyword Testing
  • Data-Driven Testing
  • Smoke Testing
  •    Continuous focus on code quality.
  •    We use state of the art code quality and automation tools
  •    Static code analysis using Sonar. Identify bugs, code smells, coverage and duplications
  •    Performance testing using JMeter. Identify performance bottlenecks in services
  •    1000+ Junit cases to cover 90+% code
  •    Continuous builds using Jenkins. Entire test suite runs on every code check-in
  •    Automated UI testing using Selenium.