Jackson Martinez's close range finish secured Porto a hard-earned draw against Everton to deny Leon Osman a win in his testimonial.
It was the least the Portuguese side deserved as they had much of the possession and the best of the chances at Goodison Park.
Steven Naismith, starting on his own up front, had an early opportunity but he was flagged offside before putting the ball in the net.
At the other end Tim Howard made a cameo appearance after cutting his extended post-World Cup holiday short.
Howard wasn't supposed to play but insisted on playing the first 20 minutes before being replaced by Joel Robles.
By then Porto had started to assert themselves on the game, with the impressive Ricardo Quaresma seeing more of the ball and having a sighter from 25 yards that went just over.
It was Everton, though, who took the lead in fortunate circumstances just before half time. Goalkeeper Fabiano hit a clearance straight to Aiden McGeady who teed up Naismith for a first time finish into the corner.
During the break record signing Romelu Lukaku was introduced to the crowd, proudly holding up his new number 10 shirt and adding to the excitement ahead of the new season.
Roberto Martinez made three substitutions at half time, including a first Everton appearance for Muhamed Besic.
The Bosnian wasn't afraid of a tackle, but his control, touch, awareness and passing ability impressed many onlookers and was a candidate for man-of-the-match despite only playing 45 minutes.
Porto would continue to have the better of things though and deservedly equalised on 57 minutes when Martinez evaded two defenders in the area and fired home low past Robles.
Porto turned the screw for the next ten minutes but without creating too many clear cut chances, Quintero perhaps with the best of them but his deflected shot went just wide.
Everton then responded with the improving McGeady bursting down the right to create two chances for Osman, but his left foot shot was well blocked by Danilo before putting a diving header over minutes later.
Another McGeady cross then set up youngster Ty Browning, but his shot at the far post was well blocked by goalkeeper Fabiano.
Osman went off to a rousing reception after 87 minutes before returning to the field at the final whistle, with Everton having to settle for a draw.
Plenty of positives to take from this fixture though, not least the performance of Besic. Though it is important to remember that pre-season results matter little as it is all about the big kick off in a fortnight's time.
Plus, regardless of the result, today was all about Osman and richly deservedly recognition for his 10 years in an Everton first-team shirt.
Everton: Howard (Robles 22), Hibbert, Jagielka (Stones 54), Alcaraz (Distin 46), Baines (Browning 54), Osman (c) (McAleny 86), Barry, McGeady (Hope 85), Barkley (Besic 46), Pienaar (McCarthy 46), Naismith (Hope 86). Subs: Kennedy, Lundstram, Duffy.
Porto: Fabiano, Danilo (Opare 86), Maicon (Reyes 76), Indi, Sandro (Angel 76), Neves (Quintero 55), Herrera (Eduardo 75), Torres (Jackson 46), Evandro (Casemiro 55), Quaresman (Brahimi 46), Lopez (Tello 55). Subs: Nunes,