The Scotsman, who has been with the Baggies for the last six years, is now tied down to the Premier League outfit until the summer of 2017.
"I'm happy to get my new contract finalised," Dorrans told the club's official website. "We've been in talks for a couple of months and I'm glad to get it over the line. I'd like to thank my agent and the club for getting it sorted out.
"I've enjoyed my six years at Albion, I'm looking for a testimonial now! It's been a good six years and that's the reason why I've signed the extension. I'm looking forward to getting going now for the new season."
Dorrans, whose 12-month option was activated by West Brom earlier this summer, started 14 games for the Baggies last season.