Software testing

 

Types of testing

Description

Smoke Testing

Consists of minimal attempts to operate the software, designed to determine whether there are any basic problems that will prevent it from working at all. Such tests can be used as a build verification tests.

Regression Testing

It is a type of software testing that ensures that changes (enhancements or defect fixes) to the software have not adversely affected it. The likelihood of any code change impacting functionalities that are not directly associated with the code is always there and it is essential that regression testing is conducted to make sure that fixing one thing has not broken another thing. During regression testing, new test cases are not created but previously created test cases are re-executed.

Performance Testing

It is generally executed to determine how a system or sub-system performs in terms of responsiveness and stability under a particular workload. It can also serve to investigate, measure, validate or verify other quality attributes of the system, such as scalability, reliability and resource usage.

Security Testing

It is conducted to evaluate the degree to which a test item, and associated data and information, are protected so that unauthorized persons or systems cannot use, read or modify them.

Acceptance Testing

It is pretty much like the smoke test, but it's usually performed as part of the hand-off process between any two phases of development.

Integration Testing

It is performed when testers ensure that business processes across workflows do provide precise as well as expected results.