- automate a user simulation that interacts with your system as a black box
- is like taking a practice exam - the closest most similar test you will get to the real deal
- complex and hard to implement
- so mostly often used for production grade code, not pet projects