The axing of Hafeez was expected after he scored only 102 runs in the last five test matches this year, including three against South Africa and two against lowly-ranked Zimbabwe.
South Africa is the team against which Hafeez has always struggled, scoring only one half century and a total of 307 runs in 18 innings.
The selectors have named 12 players for the test series while three more will be added after Pakistan 'A' plays a three-day warmup match against the Proteas next week at Sharjah.
The test team will be led by Misbah-ul-Haq, who has also come under criticism after Pakistan lost four of its last five test matches this year.
South Africa whitewashed Pakistan 3-0 in February before Zimbabwe shocked Misbah with a victory in the second test at Harare last month to level the series 1-1.
Wicketkeeper Adnan Akmal returned to the team after being ignored for the test series against Zimbabwe while selectors also named three specialist spinners -- Saeed Ajmal, Abdul Rehman and uncapped Zulfiqar Babar -- in the hope that the wickets will suit slow bowlers in the UAE like it did against England last year.
