The last of the 34-year-old’s 10-year Test career came in the Ashes opener at Cardiff which England won by 169 runs.
Watson made 30 and 19 with the bat, and failed to take a wicket, causing him to lose his place for the rest of the series.
Watson’s Test retirement was announced on Cricket Australia’s official website.
“It’s been a decision that hasn’t come lightly, over the last month especially,” he said.
“I know it’s the right time to move on and still hopefully play the shorter formats of the game, one-dayers and T20s.
“I’ve been through a lot of different waves of emotion about what is right for myself, my family and most importantly the team as well.
“Over the last couple of days there was a lot of clarity (for me) of what the right decision was. I just know that I’ve given everything I possibly can to get the best out of myself.”
Watson, who captained his country in one test and nine one day internationals, steps down after being ruled out of the rest of the one-day international series by a calf injury sustained in the tourists’ victory at Lord’s on Saturday.
An Ashes winner in 2013/14 and this year’s World Cup — who had his run ins with the cricket authorities being one of four players to be dropped from the squad during the 2013 tour of India for not doing their homework — he informed his teammates of his decision on Sunday morning.
It follows Australia Test captain Michael Clarke’s move to retire from all forms of cricket in the wake of the Ashes series defeat in England.
Watson played 59 Tests for Australia, scoring 3,731 runs and taking 75 wickets.