The Chinese star saved some of her best tennis for the tail end of the match, outplaying Andreescu to prevail in a 7-5 5-7 6-2 victory.
"While other players are playing matches, I haven't been" - Fernandez after early loss in Toronto
Both ladies exchanged multiple breaks throughout the match, with Zheng increasing her intensity to prevent a first set tiebreak. However, it was Andreescu who discovered her rhythm in the second set, saving both break points and capitalizing on the energy from her home crowd to escape with the second set.
It was a tale of contrasting fortunes in the final set, with Zheng hitting her stride and winning eight of nine points behind her first serve. Alternatively, Andreescu was unable to find her first serve, winning only 28% of those points. This led to three breaks of serve, and although the 2019 champion was able to break back, it was not enough as her Chinese opponent closed out the match after two hours and 58 minutes.
The World No.51 will face Karolina Pliskova in the quarterfinals, as last year's Wimbledon finalist upset third seed Maria Sakkari earlier in the day.