India's Virat Kohli has stepped down as captain of the test side following their 2-1 series defeat by South Africa, the player said in a statement on Saturday.

"It's been seven years of hard work, toil and relentless perseverance everyday to take the team in the right direction. I've done the job with absolute honesty and left nothing out there," Kohli wrote on Twitter.

"Everything has come to a halt at some stage and for me as test captain of India, it's now. There have been many ups and also some downs along the journey, but never has there been a lack of effort or lack of belief."

Kohli, 33, gave up the Twenty20 captaincy in September and he was replaced as one-day international skipper in December, with opener Rohit Sharma taking over in both formats.

Kohli, who took over the reins in 2014, led India in 68 tests, winning 40 matches and losing 17.