Tour match, Taunton, final day:
Somerset 249 & 115-3 v South Africa 515-3 & 215-6
de Villiers has previously notched a Test century against England
South Africa's preparations for the upcoming Test series against England gained little momentum as their tour game with Somerset ended in a draw.
Stand-in skipper Ashwell Prince declared on 215-6 shortly after Paul Harris reached 50 to leave Somerset a target of 482 in a minimum of 46 overs.
By the close at 1700 BST they had reached 115-3 off 34 overs.
Opener Neil McKenzie did play his way into form with a patient 63 from 109 balls and Jacques Kallis appeared fit.
South African coach Mickey Arthur said he was pleased with his side's performance at Taunton as he looked ahead to the first Test against England at Lord's on 10 July.
Our focus is on July 10 and everything we do leading up to that is about getting ready for that day
South Africa coach Micky Arthur
"I think we have got everything we wanted. We couldn't have scripted it better," he said.
"We wanted to build our bowlers up and we've got another three-day game before the Test.
"We didn't want to overbowl them because there is a day off tomorrow and then probably not another until the day after the Headingley test match.
"You probably get more intensity in two-day warm-up games because you bat for one day and bowl for one day. The third day tends to drag on a bit but we are very happy where we are at the moment.
"Our focus is on 10 July and everything we do leading up to that is about getting ready for that day."
McKenzie and spinner Harris scored half centuries before the declaration and then Morne Morkel, Andre Nel and Harris picked up a wicket apiece.
Arthur is anticipating the likely Test side will be fielded in the three-day game with Middlesex starting at Uxbridge on Friday.
Skipper Graeme Smith (hamstring), all-rounder Jacques Kallis (elbow) and opening batsman Hashim Amla (groin) are all expected to be fit.