"Faf has been making steady progress from back and shoulder injuries and until last week was on track to make a comeback in this match," said team manager Mohammed Moosajee.
"He developed a respiratory tract infection which delayed his recovery this week, and subsequently made it difficult for him to make a full recovery in time for the match.
"We are hopeful he will recover in time to lead the team for the first Test match against India starting in Cape Town on January 5."
AB de Villiers, who makes a return to test cricket after almost two years, will skipper the side for the one-off test against Zimbabwe, the first to be played over four days and the first day-night affair in South Africa.
The test is a warm-up for the Proteas' three-match home series against India in January and then four against Australia in March and April.
First Published: December 26, 2017, 1:51 PM IST