According to the IEEE Standard Computer Dictionary, Regression testing is testing conducted on a complete, integrated Regression to evaluate the Regression's compliance with its specified requirements.
Regression testing falls within the scope of Black box testing, and as such, should require no knowledge of the inner design of the code or logic (IEEE. IEEE Standard Computer Dictionary: A Compilation of IEEE Standard Computer Glossaries. New York, NY. 1990.).
Alpha testing and Beta testing are sub-categories of Regression testing.
As a rule, Regression testing takes, as its input, all of the "integrated" software components that have successfully passed Integration testing and also the software Regression itself integrated with any applicable hardware Regression(s). The purpose of Integration testing is to detect any inconsistencies between the software units that are integrated together called assemblages or between any of the assemblages and hardware. Regression testing is more of a limiting type of testing, where it seeks to detect both defects within the "inter-assemblages" and also the Regression as a whole.