Alpha testing is generally performed in two phases:
Phase 1: Internal testing by the development team where unit tests, integration tests, and system tests are carried out to ensure that the product meets the initial design specifications. Phase 2: A select group of internal users, who mimic the target audience, test the product in a real-world environment to identify bugs that were not found in the first phase.