With XP, testing starts on day one of the project. Tests are written before the code itself, and are kept running at all times. A cycle of unit testing, acceptance testing, regression testing, etc., is repeated several times daily. Such extensive testing is made feasible through test automation and test process automation.
XP development is rotated so that instead of one person who knows everything about a given section of code, everyone on the team knows much about every section of the code. This has been shown to increase team flexibility, throughput and productivity.
Developers program in pairs which, although it may seem counter-intuitive at first, actually increases software quality without impacting time to deliver. This increase in quality allows future development to proceed quickly and effectively, resulting in significant savings later in the project.
In conclusion, XP embodies rules and practices, which set it apart from traditional software development. It provides for systems to be quickly put into production and for the system to evolve continually based on customer feedback. It incorporates immediate and continual testing, including customer acceptance testing. Communication and development practices increase the quality and cost-effectiveness of the resulting product.
For additional information of (Extreme Programming)