Wolves 1 (Bonatini 33)
Middlesbrough 0
Wolves began the new campaign with a hard fought out win against a Middlesbrough team tipped for a quick return to the top flight. A game of few clear cut chances was decided by Leo Bonatini who pounced on a defensive error.
Wanderers had seven players making their League debuts with just Conor Coady, Bright Enobakhare and Romain Saiss surviving from the team that started against Preston North End in the final game of the 2016/17 campaign.
The earlier thunder and rain had given way to sunny blue skies as Wolves kicked off attacking the North Bank end.
An early free-kick from Adam Clayton was planted in the heart of the home box where John Ruddy ran from his line to make a confident claim.
Clayton then lashed a dangerous cross through the heart of the home goalmouth to cause a rare moment of concern as both teams failed to make the most of some attractive approach work.
Roderick Miranda was yellow carded for a late challenge on Britt Assombalonga before the deadlock was broken in the 33rd minute.
The goal came about after a dreadful error by Daniel Ayala who played a square ball across the face of his own box. Bonatini quickly grabbed possession and slid the ball past the advancing Darren Randolph in front of a delighted North Bank (pictured).
Boro should have been on level terms a minute before the break but the unmarked Martin Braithwaite headed wide after fine centre from Cyrus Christie.
Half-Time: Wolves 1 Boro 0
Wolves had two opportunities to stretch their advantage in the opening minutes of the new half. A Barry Douglas cross sailed through the Boro goalmouth needing just a touch, then Enobakhare jinked his was into the box and prodded the ball towards goal only for Randolph to make a full length save.
A lovely crossfield pass by Saiss picked out Bonatini but his centre was turned behind for an unproductive corner.
The striker was replaced by Nouha Dicko shortly afterwards whilst Boro sent on Patrick Bamford for Ashley Fletcher. Clayton then went into the book for a foul on Jota.
Midway through the half Ruddy had to charge from his area to head clear a lofted ball towards the Wolves box. Ruben Neves broke and hit a pinpoint pass that dropped into the path of Matt Doherty who won a corner. Douglas took the flag-kick and Saiss, at the near post, flicked the ball wide.
On 72 minutes, Britt Assombalonga looked to be on for and equaliser as he broke into the box but Ruddy was quickly off his line and he managed to get enough on the ball to deflect it away for a corner.
Dave Edwards replaced Enobakhare and when the game entered its final stages, Jordan Graham went on for Diogo Jota.
Saiss completely miskicked the ball when Graham fired a low free-kick into the area, and in stoppage time Adam Forshaw was cautioned after a late tackle on Graham as Wolves held out for the four added minutes to get the season off to a great start.
Wolves: Ruddy, Doherty, Douglas, Coady (capt), Boly, Miranda, Saiss, Enobakhare (Edwards 78), Bonatini (Dicko 58), Neves, Jota (Graham 84).
Unused subs: Norris, Bennett, Batth, Ronan.
Booking: Miranda (28 – foul)
Boro: Randolph, Gibson (capt), Braithwaite, De Roon (Forshaw 66), Assombalonga, Christie, Clayton, Ayala, Fletcher (Bamford 58), Howson (Gestede 81), Friend.
Unused subs: Konstantopoulos, Da Silva, Leadbitter, Fry.
Bookings: Clayton (59 – foul), Forshaw (90+2 foul).
Referee: D. Bond.
Attendance: 29, 692.
Under 23s Friendly: TNS 1 Wolves 5 (Collins 2, Armstrong, Seedorf, own goal).