AB de Villiers and Dale Steyn will both have a dress rehearsal for an expected return to Test cricket when they play for a South African Invitation XI against Zimbabwe later this month.

The teams will meet in a day-night match in Paarl from December 20 to 22 in Zimbabwe's only warm-up match before South Africa stages its first day-night Test, a one-off, four-day Test match in Port Elizabeth from December 26 to 29.

Batsman de Villiers and fast bowler Steyn have both been out of Test cricket for more than a year.

Read: Steyn set for comeback from injury

De Villiers has not played a Test since captaining South Africa against England in January 2016, firstly because of an elbow injury and then because he decided to take a break from the five-day format.

During his extended break, he also gave up captaincy, a mantle currently held by Faf du Plessis. The 360-degree batsman has only appeared in one first-class match during the current season.

Steyn suffered a broken shoulder in a Test in Australia in November 2016 and only started playing again in November.

He has shown impressive form in four T20 matches for his franchise, the Titans, taking six wickets at an average of 13.50 to go with an economy of 5.78 runs per over. He has not played a first-class match since his injury.

Two other Test players, all-rounder Chris Morris and batsman Temba Bavuma, were also included in the Invitation team, which otherwise consists of fringe franchise or second-tier first-class players. Like Steyn, Morris is returning from injury while Bavuma has been short of runs in domestic matches.