Just three days out from the start of the marathon six-week event, both South Africa -- who rested match-winners Hashim Amla and Dale Steyn -- and Sri Lanka looked lacklustre.
In Christchurch, Kane Williamson top-scored with a 53-ball 66, dotted with nine fours. Skipper Brendan McCullum smashed a typically muscular 59 off 45 balls with seven fours and a six.
Their efforts lifted the home side to an impressive 331-8 in 50 overs.
Seamers Vernon Philander, Wayne Parnell and Kyle Abbott all took two wickets each but strike bowler Morne Morkel went wicketless, conceding 31 runs off seven overs.
New Zealand pace bowler Trent Boult showed the vaunted Proteas attack how to make the most of the conditions at the Hagley Oval with the 22-year-old returning 5-51 off 9.2 overs.
It could have been more embarrassing for South Africa but JP Duminy (80 not out) and Philander (57) lifted their side from 62-6 with a 121-run seventh-wicket stand, which put a little gloss on the gloomy picture.
"We are not too fazed about the result. It's about time in the middle, and overs under the belt," said Duminy after his team were bowled out for a paltry 197.
Come Sunday, when South Africa face Zimbabwe in their first pool match at Hamilton, "we will be ready to go – we won't read too much into this", he insisted.

Latest News from Sports News Desk