🧠 Super Memory Trick 🔥 Smoke = Build is not broken 🔥 Sanity = Fix is logical 🔥 Regression = Nothing else broke Software testing is classified/divided into in 3 main ways: HOW → Testing Techniques (White/Black/Grey Box) WHERE → Testing Levels (Unit → Integration → System → UAT → Release) WHAT → Testing Types (Smoke, Sanity, Regression, Performance, Security, etc.) WHEN CHANGE → Regression/Retest ✅ Complete Software Testing Summary Table (One Page Revision) Testing Type Level / Category Main Purpose (Key Idea) Who Performs When Done Example White Box Testing Technique Tests internal code logic Developers During coding Test all branches in if/else Black Box Testing Technique Tests input/output behavior QA Testers, Users After build ready Login with valid/invalid credentials Unit Testing Level Tests individual function/module Developers First testing stage Test add() function Integration Testing Level Tests interaction between modules Dev + QA After Unit Testing Login module → Dashboard module System Testing Level Tests complete system end-to-end QA Team After Integration Testing Full e-commerce flow checkout Acceptance Testing (UAT) Level Confirms system meets business needs Clients/End Users After System Testing User verifies banking transfer works Functional Testing Type (Black Box) Checks features work as required QA Testers Any testing level Login, Signup, Payment works Regression Testing Type Ensures new changes didn’t break old features QA + Automation After bug fix / new feature Password reset fix → Login still works Smoke Testing Type Checks build stability (basic critical functions) QA / Dev After new build deployment App opens, Login works Sanity Testing Type Checks specific fix/change works correctly QA Testers After small bug fix Discount bug fixed → verify coupon works Retesting Type Confirms a specific bug is fixed QA Testers After defect fix Test same failed case again ⭐ Quick Interview Comparison Table Feature Smoke Sanity Regression Scope Broad & basic Narrow & focused Wide & deep Done After New build Small change/bug fix Any code change Goal Build is stable? Fix works correctly? Old features still work? Test Depth Shallow Medium Deep Software testing is divided: in 3 main ways 1. Testing Techniques/ Approaches (HOW you test): 3 techniques Describe how test cases are designed.
...