flashHomeFeature

Independent Software Testing

Independent Software Testing

Introduction

Independent software testing provides confidence that the system has been tested by people other than the developers. Independent testing ensures the following:

  • The client’s specifications and requirements have not been compromised
  • All modules of the software are working correctly
  • All execution paths of the software are working correctly
  • The software meets end to end functional requirements in all situations
  • The software can handle maximum and minimum values of data input and output
  • The system handles error conditions gracefully
  • The software works efficiently under maximum load conditions
  • The system is robust and reliable

We have a wealth of expertise in independent testing of complex mission critical systems.

Online Systems Testing

We have tested large e-commerce systems including Sports Betting Systems, Multiplayer Poker Systems, Internet Casino Systems and Internet Lottery Systems. As these systems interact with customers and banks in real time, they are regarded as mission critical.

iTech Labs principal consultants have developed various standards for e-commerce systems. We have also developed test plans and test procedures, which have been used for successful testing of several e-commerce systems worldwide. We use a custom application for managing the projects and producing various reports.

Independent software testing by iTech Labs encompasses the following:

  • Test planning (test strategy, test plans)
  • Testing (running of test scripts )
  • Project Management (project planning, managing resources, tracking progress/issues, providing timely and accurate reports, successful completion of the project within timeframe)

Test Planning

Appropriate test strategy and test plans are critical components of successful testing. We have extensive experience in the area of developing test strategies and test plans for a range of systems. Test planning requires close examination of specifications, system documentation, operating environments and selection of appropriate testing resources.

Testing

Correct implementation of test plans is the key to achieving the desired results in testing. The major areas of testing are unit testing, functional testing, regression testing, performance testing and integration testing.

Unit testing: Testing of individual modules in order to thoroughly exercise each module to its limits.

Functional testing: This is to test system requirements to verify that they meet functional specifications. The most common functional tests are:

  • testing of all modules to verify correct operation
  • testing of user interfaces
  • testing of financial interfaces (banks, credit card service providers etc.)
  • controlled tests to produce reports and verify accuracy of data storage

Regression testing: This is to ensure that software or hardware changes have not introduced new problems to previously tested components of the system.

Performance testing: Performance testing is to evaluate the response time and behavior of the system when the number of users and transactions are increased to levels expected in production mode.

Integration testing: This is to ensure that the entire system with the production release software, work correctly on the production infrastructure with final software and hardware configurations. Integration testing is done immediately prior to going live.

Project Management

This involves preparing project plan, managing resources, tracking progress and issues, maintaining excellent communication with all stakeholders, providing timely and accurate reports and successful completion of the project within the required timeframe.