Depending on the objectives quality assurance organizations are pursuing, all software testing types can be conventionally divided into the 3 following groups:
- Associated with changes (modifications, upgrades).
Are you ready to acquire some knowledge on each testing type, its goal and use with regard to the assessment of software application’s quality? Ok, then, let us get this started!
Functional Testing Techniques
Functional tests focus on functions and capabilities of the programs as well as their interaction with other software programs / systems and can be used in all testing levels: component or unit testing, integration testing, system testing and acceptance testing. Functional tests are conducted to investigate the external behavior of the system. There are the most popular types of functional tests:
- Functional testing.
- Security and access control testing.
- Interoperability testing.
It is no secret that functional testing services are used by a majority of software organizations to make sure that all functions of their IT products operate in accordance with the requirements specification.
Non-Functional Testing Techniques
Non-functional tests are designed to evaluate quality characteristics of the software application, its component or the whole system. This testing refers to the analysis of aspects of software products which may not relate to a certain function or a user’s action such as security or scalability. In general, this testing aims to check how the system works. Non-functional tests can be as follows:
All Types of Performance Testing:
- Performance and load testing.
- Stress testing.
- Stability / reliability testing.
- Volume testing.
- Installation testing.
- Usability testing.
- Failover and recovery testing.
- Configuration testing.
Testing Techniques Associated with Changes (Modifications, Upgrades)
After specified changes have been made to a software program ( these can include bug/defect fixing) this software must be retested to make sure that it still performs as desired despite the new changes. You are welcome to get familiar with testing methods that should be conducted after installation of software program in order to confirm that the software changes/modifications/upgrades have no unexpected side-effects or that the reported bugs/defects were correctly fixed:
- Smoke testing.
- Regression testing.
- Build verification test.
- Sanity testing.
Top software testing companies run various types of testing since software testing field is their core competence.