Testing Techniques

There are two high-level approaches to testing software:

1. White Box Testing (Looking Inside the Code)

White box testing (also referred to as Glass Box Testing or Clear Box Testing) focuses on how the software is built internally.

  • The tester can see and interact with the source code
  • Tests are based on logic, conditions, and paths in the code
  • Programming knowledge is required
  • Usually done by developers

Think of it like: Opening the hood of a car to inspect the engine while it’s running or looking at a watch with the face removed so you can see the gears turning to make the hands move.

2. Black Box Testing (Testing Like a User)

Black box testing (also referred to as Functional Testing or Behavioral Testing) focuses on what the software does, not how it’s built.

  • The tester does not see the code
  • Tests are based on requirements and expected behavior
  • The tester provides inputs and checks outputs
  • No programming knowledge required

Think of it like: Driving a car and checking if it brakes, turns, and accelerates correctly without having knowledge of how it works or looking at a watch with the face attached so you cannot see that there are gears turning underneath that make the hands move.