Kallis is sure to go down as one of the greatest all-rounders of all time, having amassed 13,174 runs and taken 292 wickets in 165 Tests.
Yet the 38-year-old has not registered a Test century in over a year and averages just 16 in 2013, compared to a career average of 55.12, and has now decided to focus on the limited-overs formats.
"It's been an honour and a privilege to have been part of the South Africa Test team since making my debut 18 years ago," he said.
"I have enjoyed every moment out in the middle but I just feel that the time is right to hang up my Test whites.
"It wasn't an easy decision to come to, especially with Australia around the corner and the success this team is enjoying, but I feel I have made my contribution in this format. The last two years specifically have been a memorable journey with an exceptional group of cricketers.
"I am fortunate enough to have ended my Test career amongst a group of talented cricketers but more importantly, friends whom I will cherish for years to come."
Kallis, who first represented his country in December 1995 aged 20, will vacate his position with South Africa top of the International Cricket Council Test rankings.
He will continue to make himself available for the one-day international and Twenty20 formats as he is keen to cap his career off by winning an ICC event with his country - and the 2015 World Cup in Australia and New Zealand is his priority.
"I don't see it as goodbye because I still have a lot of hunger to push South Africa to that World Cup in 2015 - if I am fit and performing," he added.
"Winning an IPL title with the Kolkata Knight Riders was a special achievement, and I am still determined to taste that success with South Africa at an ICC event."
Kallis, who had spells with Middlesex and Glamorgan in the 1990s, will be hoping to sign off with a memorable outing in the second Test against India, which begins in Durban on Boxing Day.
He made just 34 runs in two innings last time out, although he took four crucial wickets as the first Test in the two-match series ended in a pulsating draw.