The Croats played without star midfielder Luka Modric and forward Ivica Olic but still dominated.
Captain Corluka scored in the 16th minute and Kalinic followed two minutes later after a great pass from Eduardo da Silva. Vukojevic scored 10 minutes from the end from just inside the penalty box.
Estonia goalkeeper Sergei Pareiko prevented a higher score with some superb saves.
Estonia replied from a free kick in the 83rd, when a shot by Konstantin Vasillev was slightly deflected by Vukojevic.
Croatia will play another friendly against Norway next week in Oslo.
Croatia will play Ireland on June 10 in the opening match of Group C at Euro 2012. Also in the group are Spain and Italy.
"This is not the team that will open against Ireland, but this was a good test," coach Slaven Bilic said.
Kalinic said Estonia was a "similar team to Ireland and we had a best possible opponent today."
Croatia beats Estonia 3-1 in friendly
Advertisement