England got the big send-off they wanted with a 3-0 win but their performance against lowly Peru showed Roy Hodgson's men have work to do before the World Cup gets under way.
With just two weeks until their Group D opener against Italy, the match against a side without a win in six matches looked just the tonic for their farewell party at Wembley.
However, Roy Hodgson's men often struggled against Peru, ranked 42nd in the world, and only managed one shot on target in the first half, with Daniel Sturridge's fine curling effort finding the top corner.
The South Americans continued to frustrate the home side after the break, although Gary Cahill and Phil Jagielka scored from set-pieces to add gloss to the scoreline ahead of England's departure to their Miami training base this weekend.
England fans did their best to create a carnival atmosphere inside Wembley, but on the pitch there were little signs of flair from the hosts.
Peru had not played together for eight months, but in the opening 20 minutes they looked the more likely team to score.
Cahill held back Corinthians midfielder Luis Ramirez after he sneaked into the area and only a last-ditch tackle by Glen Johnson prevented Andre Carrillo from testing Hart deep inside the England box.
Deza was the next man to breach England's defence. The debutant sprinted past Jagielka into the home area, but Hart came to the rescue.
England's number one had to be at his best moments later when he acrobatically saved a Deza shot which looped up off Jagielka's outstretched leg.
Hodgson scratched his head, wondering what had happened to the team that had so impressed him in training over the past fortnight.
The atmosphere inside Wembley fell flat. The home crowd resorted to chucking paper aeroplanes on to the pitch for entertainment.
Sturridge offered the first glimmer of hope, blasting a low shot just wide of the far post following a run by Adam Lallana.
The Liverpool striker made no mistake with his second effort.
Sturridge picked up Johnson's quick throw, strode past his marker and clipped a curling left-foot shot over Raul Fernandez.
The goal lifted the atmosphere inside Wembley, but England almost threw their lead away just before half-time by allowing Ramirez to sneak through. Johnson played the midfielder onside, but again Hart came out to smother the ball.
England emerged from the tunnel long before their opponents, eager to start the second half with a bang.
But it was the same slow opening all over again. Deza picked the ball up on the halfway line and sprinted forward 10 yards before firing a looping shot that flew a few inches over Hart's goal.
Andre Carrillo rode Johnson's tackle and slipped Deza in again, but Jagielka saved the day with a crucial tackle.
England looked shaky, but they opened up a two-goal cushion in the 65th minute when Cahill powered Baines' corner into Fernandez's goal.
Hodgson brought Wilshere and Sterling on for Gerrard and Rooney, who had a poor night.
Sterling made an immediate impact, winning a corner from which England scored their third.
They had Fernandez to thank for the goal.
The Peru goalkeeper dropped Baines' corner when he challenged Cahill for the ball and Jagielka rolled the ball between Fernandez's legs and into the net.
Hodgson took Jagielka and Lallana off. A few boos rang out when their replacements, Chris Smalling and James Milner were announced.
John Stones then came on for his international debut before Ross Barkley was introduced.
Sterling was the best of the substitutes. His pace and trickery bamboozled the Peruvians and he almost floated a shot beyond Fernandez in the dying minutes.
Wilshere also chipped in with an exquisite bit of skill that fooled two Peru defenders, but Milner could not convert.
The players went on a mini lap of appreciation after the final whistle - even though most of the 83,000 plus crowd inside Wembley had left.
Those who remained clapped the 3-0 win, but they will know their team must play better to achieve the same scoreline against Italy in two weeks' time.