Я не совсем понимаю, что вы имеете в виду, говоря, что поведение меняется между "стандартным" представлением и "тестовым" кодом, может быть, вам стоит уточнить это.
но что касается тестирования сессии, я думаю, что есть подходы.
- Вы должны понять, как работает сессия django, прочитайте модульный тест для пакета сессий, который вы использовали в своем приложении. это касается понимания того, как работает серверная часть.
- вам, вероятно, нужно записать несколько разговоров между браузером и сервером (например, с помощью FIREBUG)
так что проблема для вас выглядит так, что вы не передаете session_id, который вы получаете, когда вы снова входите на сервер, когда вы общаетесь с сервером. как положить его в (POST, GET, COOKIES, я не совсем помню это).
Здесь важно понять, как сессия работает в HTTP, как только вы это получите, у вас определенно будет четкое представление о том, что там происходит, и сделайте соответствующие объяснения.