Coach Stephen Kearney was thrilled with his side's resilience after roasting his players for their "soft" effort in last week's second-half collapse against the Titans.
"I was pretty pleased with the whole performance," said Kearney.
"We had to have a good look at ourselves after our performance last weekend and the guys responded really well during the week and we prepared well, trained well.
"[The Dragons] are a top four footy team and the way they hung in to get the result in the end is a real positive."
Led superbly by captain Roger Tuivasa-Sheck, the visitors delivered on plans to simplify their play with strong contributions from their outside backs and a return to form from their hot-and-cold forward pack defining their outstanding first-half effort.
They looked nervous on attack early on but grew in confidence after Johnson kicked their first points before Dragons fullback Matt Dufty was sinbinned for interfering with Tuivasa-Sheck as he chased a grubber to the ingoal.
The Warriors capitalised on their one man advantage with offloads creating their first two tries to centre Solomone Kata and hooker Issac Luke, before Tuivasa-Sheck produced one of his trademark try-savers when he stripped the ball from Dragons centre Tim Lafai as he dived for the line.
Positive play continued to pay dividends with five-eighth Blake Green's wide pass giving Kata room to run in his second down the left side to effectively seal the result just before the break.
All their momentum was lost after the resumption however, with Fusitu'a's mistakes giving the Dragons impetus to score twice through hooker Cameron McInnes and interchange forward Luciano Leilua.
Direct play from the Dragons forwards saw them continually make metres through the middle of the ruck but the Warriors reasserted themselves to cut the late comeback short.
With just four rounds remaining in the regular season, the Warriors will look to build some consistency with next Friday's home game against Newcastle.
"We've got three of the next four games at home and we haven't won at home in a while, we've played some pretty good teams," said Kearney.
"Our focus is on making sure we recover well over the next few days and have a really strong performance on Friday night."
Warriors 18 (Solomone Kata 2, Issac Luke tries, Shaun Johnson 2/3 cons, 1/1 pens)
Dragons 12 (Cameron McInnes, Luciano Leilua tries, Gareth Widdop 2/2 cons)