A last-minute penalty scored by Lucas Cavallini helped Canada to a 2-1 win against Japan in their final World Cup preparation game at Al-Maktoum Stadium in Dubai, United Arab Emirates.

Head coach John Herdman opted for a few changes to the starting line-up following their lacklustre draw with Bahrain last Friday giving more players a chance to impress.

He remained cautious with midfielder Stephen Eustáquio who sat on the bench.

Canada’s final test before their World Cup campaign begins didn’t start well. They were caught out within the first 10 minutes as Japan, ranked 24th in the world and who will also play in Qatar, took the lead.

A shaky clearance from goalkeeper Milan Borjan allowed Japan to hit on the counter attack and winger Yuki Soma got on the end of the ball for 1-0.

As the game progressed, the Canadians grew into the match and exuded more confidence which eventually led to the equaliser.

Junior Hoillet sent a corner into the box where it found Atiba Hutchinson and the captain tipped the ball towards Steven Vitória who made things 1-1.

Coming out into the second half, Canada made multiple substitutions seeing Jonathan Osorio, Joel Waterman, Cavallini and others enter the game.

The team’s confidence continued to rise as they pushed for a late winner with Japan forced to sit back and soak up Canada's attacking threats.

The final minutes were end-to-end with mistakes in focus. Japan caught Canada's defence sleeping and went on to hit the post before Richie Laryea was taken down in the box at the other end.

Cavallini then stepped up to the penalty spot and pulled off the Panenka to ensure Canada claimed the 2-1 win.