cryptoforum, лучше проверять через os.path.isdir(). Она проверяет является ли переданный путь папкой (и существует ли). os.path.exists() просто проверяет на существования путя (это может быть файл или папка). Так что если у вас лежит где нибудь рядом файл test_dir - то ошибка в принципе ясна