Rookie Tom Savage, trying to surge past Case Keenum and claim the Texans’ backup quarterback job, took a major step in that direction by rifling a 31-yard touchdown pass to second-year tight end Ryan Griffin with 59 seconds left Saturday night, then found fellow rookie Travis Labhart for the two-point conversation as Houston beat the Broncos 18-17 in Denver.

Savage went 5-for-6 for 68 yards on what became the game-winning drive. He’d earlier connected with Labhart, who played at Texas A&M, on a third-and-4 for seven yards and a fourth-and-3 for 15 yards before hooking up with Griffin on an 8-yard completion that immediately preceded the touchdown. Savage needed less than 3½ minutes to take the Texans 74 yards to the end zone.

The Texans had been burned by two Peyton Manning touchdown strikes to Emanuel Sanders in the final two minutes of the first half to fall behind 17-7.

Head coach Bill O’Brien, now 2-1 in his first preseason with a two-game winning streak after a disastrous 32-7 opening loss at Arizona, said Savage hadn’t gotten a lot of work during practices in the two-minute drill but he acknowledged, “He led us on a nice little drive.”

Obrien said he told the Texans, who finish the preseason at home against San Francisco Thursday night: “Preseason or no preseason, it’s always good to win against a good team.”

The game saw the return of receiver Andre Johnson, who played for the first time after suffering a strained hamstring the third day of training camp, and linebacker Brian Cushing, who hadn’t been active since suffering a season-ending knee injury in the seventh game of the 2013 season. Third-year guard Brandon Brooks also returned after being sidelined with a non-football-relaed injury, believed to be related to his weight.