AB de Villiers

South Africa's batting icon AB de Villiers says his near two-year Test break has enabled him to prepare thoroughly for his comeback in a one-off day-night Test against Zimbabwe, starting on Tuesday.

"I've had a great pre-season, which I haven't had for 13 years," he said in an interview with South Africa's Sunday Times newspaper.

The big challenge for De Villiers and his teammates, though, is what happens after the four-day clash against Zimbabwe - a three-Test tour by number one team India, starting in Cape Town on January 5.

"I'm very excited that they are going to be touring in South Africa. I haven't played against India for a while now, so it's going to be a really good series," said De Villiers.

India will be led by his Indian Premier League teammate Virat Kohli. "I'd say Virat is one of the best captains at the moment, the most improved - there's a big change from when I first saw him captaining to now."

De Villiers was the captain when he last played Test cricket, against England in January 2016. Since then he's battled injury, taken a break from the long form of the game and handed over the captaincy to former school teammate Faf du Plessis.

"I think that Faf has all the credentials to make a really successful captain. I believe he has the potential to become the best captain South Africa has seen so far," he said.

De Villiers told reporters in Port Elizabeth he had been practising against a red ball at the University of Pretoria since the end of July, "getting some technical stuff sorted out . . . I have been working for the last six months to get ready for this."

Since arriving in Port Elizabeth, he has batted against the type of pink ball which will be used in the Test match. He said batting under lights had been tricky.

"I faced a few pink balls last night on a spicy wicket, it was slightly tough," he said. "But then again it's a great challenge. It's the ultimate form of the game. It's the greatest challenge to come out on top with batting when the ball is moving around in Test cricket."