AB de Villiers, Dale Steyn and Chris Morris will move closer to their Test returns when they play for the South African Invitation XI against Zimbabwe in a three-day warm-up match in Paarl ahead of the Boxing Day Test. Temba Bavuma is the other Test player included in the squad for the practice match ahead of an eight-Test home summer.

South Africa play Zimbabwe in the inaugural four-day day-night Test starting Boxing Day, followed by three Tests against India before six ODIs and three T20s, and then four Tests against Australia in March. De Villiers and Steyn's participation in those matches will be of particular interest, not least because of the amount of time for which the pair has been absent.

De Villiers has not played a Test since January 2016 with his absence a combination of an injury layoff, that kept him out of series against New Zealand and Australia, and a self-imposed sabbatical that sidelined him from most of this year, during which South Africa have already played Sri Lanka, New Zealand, England and Bangladesh. While de Villiers remained available for limited-overs matches, he stepped down as ODI captain in August and has now recommitted himself to playing for South Africa across all formats, while limiting his participation in 20-over leagues.

He has only played one first-class match - for his franchise Titans - since he reaffirmed his international goals, but has recent good form on his side. De Villiers scored a career-best ODI score of 176 against Bangladesh in Paarl in his first bat of the home summer and has been scoring important, quick runs for Titans in their ongoing Ram Slam campaign.

Despite those runs, de Villiers said he is prepared to work for his place in the Test team and re-enters the space with an understanding that South Africa's line-up may not have space for him immediately. Four of the top five in the line-up scored centuries in South Africa's most recent outing against Bangladesh with Bavuma the odd one out, but that may not mean a straight swap for the Zimbabwe match. Bavuma was recently promoted to de Villiers' No. 4 role and has often dug South Africa out of tough situations and the selectors seem to want to keep him around. Bavuma will also play the warm-up match against Zimbabwe, knowing the man who may replace him in the Test team is right beside him.

"Temba only got limited batting time during the Test series against Bangladesh because of the dominance of our top order and we feel he will benefit from spending more time in the middle," Linda Zondi, South Africa's convener of selectors said.

Similarly, South Africa could end up spoilt for choice in the bowling department. Steyn, who has not played any international cricket for over a year since breaking a bone in his shoulder in Australia last November, has showed good signs in the Ram Slam and will also return to contend for a place in the Test XI. He needs just five wickets to overtake Shaun Pollock as South Africa's highest Test wicket-taker and coach Ottis Gibson all but confirmed his chance to claim those will come as soon as Steyn himself feels he is ready for Test cricket.

Bowling longer spells has been part of Steyn's recovery plan but the warm-up match against Zimbabwe will be his first chance to show that he can do that in a competitive situation. If he comes through, he will join a pack that includes Kagiso Rabada and Vernon Philander (who is currently sidelined after having stitches to the hand but is expected to be fit in a week), but not Morne Morkel, who was not named in the squad for the warm-up game. Morkel sustained a side strain in the first Test against Bangladesh in early October and though he has been spotted in the Newlands nets, he has not played any part in the Ram Slam competition yet. He is expected to return later in the summer.

That means Morris, who picked up a lower-back problem in England in July, could make a case to add to his four Tests. Morris returned from five months on the sidelines in the Ram Slam last week. His return to international cricket will be welcome news for South Africa, who are still compiling a second-tier of international bowlers. Andile Phehlukwayo, Lungi Ngidi, who has come back following a back problem but is not in the warm-up squad, and Duanne Olivier, who had a knee injury earlier in the season but has since recovered, are among those reserves who have not been named for the warm-up match. Wayne Parnell, who played the second Test against Bangladesh, then got injured and was then dropped by Cape Cobras in the Ram Slam, has also been overlooked.

The warm-up match will be played at Boland Park under lights, before the Test takes place at St George's Park in Port Elizabeth.

South African Invitation squad: Dominic Hendricks (capt), Temba Bavuma, Tladi Bokako, Michael Cohen, AB de Villiers, Isaac Dikgale, Leus du Plooy, Zubayr Hamza, Chris Morris, Kagiso Rapulana, Kelly Smuts, Dale Steyn, Ricardo Vasconcelos, Shaun von Berg, Lizaad Williams

Firdose Moonda is ESPNcricinfo's South Africa correspondent