Я пытаюсь улучшить то, как я пишу свои тесты для моих программ на Python. Я заметил, что в некоторых случаях было бы очень полезно иметь доступ к закрытым членам, чтобы убедиться, что метод работает должным образом. В качестве примера можно привести попытку проверить метод на предмет правильного поведения, которое не имеет ожидаемого возвращаемого значения, кроме None. Я знаю, что простой и неправильный способ сделать это - просто превратить закрытые атрибуты в защищенные атрибуты и проверить их напрямую. Тем не менее, я хотел бы найти способ, который бы не подвергал интерфейс так сильно.
Итак, как мне протестировать закрытые атрибуты внутри классов, не раскрывая их в интерфейсе, или, если применимо, лучший способ тестирования такого сценария, чтобы доступ к закрытым атрибутам не обязательно был необходим для правильного модульного тестирования?