A first-half brace from Charlie Austin put the Saints in the driving seat, before Jay Rodriguez netted in the dying stages to round off the win.
Within five minutes, the hosts had taken the lead.
Charlie Austin rolled a penalty into the back of the net after the striker’s attempted cross was adjudged to have been handled by Costa Nhamoinesu – despite the defender being literally inches away from the striker.
The goal did not dampen Sparta’s spirits, and they started the game well.
Some nice passing passages forced the Saints’ defence to remain on top form, but the same could not be said of the visitors’ back-line – which was breached twice in quick succession.
Austin had the ball in the net again, crashing a header home after 25 minutes, although it was correctly disallowed for offside.
But, less than two minutes later, the English forward did score with his header, converting Cuco Martina’s delightful cross to double the lead.
Martina then sent another great ball forward, curling a 40-yard delivery into the path of Shane Long. However, the forward failed to connect and the keeper gratefully gathered.
Heading into the break with the two-goal cushion, the Saints had no real need to attack, and it was clear they had taken their foot off the pedal in the early stages of the second period.
Puel had clearly instructed his players to ease off ahead of their Premier League fixture this weekend, and the game entered a lull during which time possession was focused around the midfield zone.
Vaclav Kadlec did manage one chance which was blocked by Virgil van Dijk, before Fraser Forster saved David Lafata’s long-range attempt.
But the Saints kept their clean sheet intact, and Rodriguez rounded off a lovely team move in the dying stages to extend the lead and end the game in perfect fashion.