Kevin Kasuza struck a half-century on debut while opening partner Prince Masvaure recorded his maiden fifty as Zimbabwe finished the first day of the first Test against Sri Lanka on 189 for 2 in Harare.
Masvaure, playing in his third Test, made 55 before he was caught by Sri Lanka captain Dimuth Karunaratne off the slow left-arm bowling of Lasith Embuldeniya.
Kasuza, one of three Zimbabwe players handed their Test debut, survived a dropped chance off a miscued hook shot before bringing up his own half-century.
He eventually fell lbw to Lasith Kumara for 63 after facing 214 balls and spending more than five hours at the crease.
Craig Ervine injected the innings with some impetus late in the day, hitting three sixes and as many boundaries as he finished unbeaten on 55. Brendan Taylor was 13 not out.
Zimbabwe captain Sean Williams elected to bat first despite overcast skies at the Harare Sports Club, where the African nation are playing their first home Test since 2017.
The hosts gave debuts to opening batsman Kasuza, left-arm spinner Ainsley Ndlovu and seam bowler Victor Nyauchi -- in their first Test match in 14 months.
Fast bowler Suranga Lakmal returned for Sri Lanka, having missed the entire Pakistan series, while Angelo Mathews was also included in an experienced side.
The two-Test tour was only announced by the Sri Lankan cricket board earlier this week.
Zimbabwe were readmitted as an ICC member last October following a three-month suspension over political interference.
The Sri Lanka games represent their first Tests since a 1-1 series draw in Bangladesh in November 2018.
Zimbabwe last played a Test at home against the West Indies in October 2017.