Our overall objective is to uncover & remove situations that could negatively impact our customer’s usability &/or maintainability. We make a point to have proper verification (building software right) as well as validation (building right software) done.
We perform various types of testing on a application;
- Black box testing - Internal system design is not considered in this type of testing. Tests are based on requirements and functionality.
- White box testing - This testing is based on knowledge of the internal logic of an application’s code. Internal software and code working should be known for this type of testing. Tests are based on coverage of code statements, branches, paths, conditions.
- Unit testing - Testing of individual software components or modules. Typically done by the programmer and not by testers, as it requires detailed knowledge of the internal program design and code. May require developing test driver modules or test harnesses.
- Integration testing - Testing of integrated modules to verify combined functionality after integration.
- System testing - Entire system is tested as per the requirements. Black-box type testing that is based on overall requirements specifications, covers all combined parts of a system.
- Sanity testing - Testing to determine if a new software version is performing well enough to accept it for a major testing effort. If application is crashing for initial use then system is not stable enough for further testing and build or application is assigned to fix.
- Usability testing - User-friendliness check. Application flow is tested, Can new user understand the application easily, Proper help documented whenever user stuck at any point. Basically system navigation is checked in this testing.
- Compatibility testing - Testing how well software performs in a particular hardware/software/operating system/network environment and different combinations of above.
|