Gloucester needed a late salvo to ensure they beat a dogged Dragons side 25-20 in the EDF Energy Cup at Kingsholm on Saturday.
Gloucester are closing in on the semi-finals but they had to battle for every point against a gallant Dragons side.
Both sides needed victory to put them within a draw of semi-final qualification ahead of Wasps at the pool summit.
And the odds were on a heavy Gloucester victory before kick-off given their star-studded international line-up from the nine changes made by the Welsh region from their heroic Heineken Cup stand at Bath.
Yet, far from giving the match up, the Dragons were actually ahead with seven minutes to go of an excellent try-laden first half.
The Welshmen actually had Gloucester on the rack in the first 20 minutes as a couple of attacks brought them chances.
Gloucester, though, should have scored when fly-half Willie Walker sliced through the visiting defence only for his pass to England winger Lesley Vainikolo to go to ground.
But, after 17 minutes, Gloucester went ahead from a superb move where Walker put an inside pass to Vainikolo for a try under the posts.
It seemed ominous but, three minutes later, the Dragons were back in it as wing Richard Fussell, who enjoyed an excellent first period, raced over from 25 metres after a dart past Olly Barkley by centre Rhodri Gomar-Davies.
And, with two minutes of the half left, the Dragons went ahead when New Zealander Grant Webb carried a few Gloucester defenders over the line with him.
The sides were level at 12-12 at the break when hooker Scott Lawson cheekily threw the ball to prop Carlos Nieto at an attacking line-out and he sprinted into the corner.
The Dragons took the lead again minutes into the second half when fly-half Shaun Connor, who had converted Webb's touchdown, booted a 38-metre penalty.
Gloucester were their own worst enemies at times as handling and kicking mistakes littered their game.
But, as the Dragons rang the changes with regular captain Tom Willis coming on to lead his troops, Gloucester turned the tables again and put the pressure on.
And the drama continued as the Dragons began to struggle with lock Adam Jones taking a knock and prop Adam Black being sin-binned on the hour for coming in on the wrong side of a ruck.
Gloucester finally struck gold again when full-back Iain Balshaw blasted through the middle for England centre Barkley to feed Vainikolo again for a corner touchdown.
Balshaw then grabbed a score of his own to put Gloucester a converted try ahead but it was not all over as replacement flanker Apo Satala, who was on for barely two minutes, was sin-binned under his own posts.
Barkley put over a late penalty but the Dragons deservedly got a losing bonus point with a late Jason Tovey corner try.
Tries: Vainikolo 2, S.Lawson, Balshaw
Tries: Fussell, Webb, Tovey
Gloucester: 15 Iain Balshaw, 14 Mark Foster, 13 Mike Tindall (c), 12 Olly Barkley, 11 Lesley Vainikolo, 10 Willie Walker, 9 Rory Lawson, 8 Alasdair Strokosch, 7 Andy Hazell, 6 Peter Buxton, 5 Marco Bortolami, 4 Adam Eustace, 3 Carlos Nieto, 2 Scott Lawson, 1 Alasdair Dickinson.
Replacements: 16 Andy Titterrell, 17 Jack Forster, 18 Dan Williams, 19 Apo Satala, 20 Dave Lewis, 21 Tristan Roberts, 22 Jack Adams.
Dragons: 15 Phil Dollman, 14 Tal Selley, 13 Rhodri Gomer Davies, 12 Ashley Smith (c), 11 Richard Fussell, 10 Shaun Connor, 9 Wayne Evans, 8 Grant Webb, 7 Richard Parks, 6 Danny Lydiate, 5 Andy Hall, 4 Adam Jones, 3 Rhys Thomas, 2 Steve Jones, 1 Adam Black.
Replacements: 16 Tom Willis, 17 Alex Murphy, 18 Joe Bearman, 19 Jamie Ringer, 20 Gareth Maule, 21 Jason Tovey, 22 Tom Isaacs.
Referee: Nigel Owens (Wales)
Touch judges: Matthew Aplin (Wales), Steve Edwards (Wales)
Television match official: Matt Peters (England)