Major testing types
Functional Testing Ad-hoc Testing Ad-hoc testing is a form of software testing where the tester explores the software system in an unstructured manner. The objective is to discover defects and issues by interacting with the system randomly. Ad hoc testing is often conducted when there are limitations in terms of time or resources for formal testing, or when testers aim to quickly understand the system's behavior. Exploratory Testing Exploratory testing is a dynamic and flexible approach to software testing that enables testers to actively explore the software system. Rather than adhering to predetermined test cases, exploratory testing leverages the tester's expertise, experience, and creativity to design and execute tests in real-time, as they delve into the system. Regression Testing Regression testing is a vital software testing approach that validates whether modifications, updates, or bug fixes to a software system have unintentionally introduced def...