South Africa will host Bangladesh in two Test matches after the sides contest a three-match one-day international series next month.
The Tests will be staged at Kingsmead in Durban from 31 March to 4 April and St George's Park in Gqeberha, formerly known as Port Elizabeth, from 8-12 April.
Both meetings will count towards the International Cricket Council's World Test Championship.
South Africa are due to start a two-match Test series in New Zealand on 16 February, having beaten India 2-1 at home last month.
The Proteas and Bangladesh will also play three ODIs in Pretoria (18 and 23 March) and Johannesburg (20 March).
Points from those games will count towards the ICC's Cricket World Cup Super League, which is part of the qualification process for the next global 50-over finals in India in 2023.