Как выполнить модульное тестирование методов в объекте метода?

Я выполнилЗамените метод на метод объектаРефакторинг описанманить.

Теперь у меня есть класс с методом run () и набор функций-членов, которые разбивают вычисления на более мелкие единицы. Как я могу проверить эти функции-члены?

Моя первая идея состоит в том, что мои модульные тесты являются в основном копиями метода run () (с разными инициализациями), но с утверждениями между каждым вызовом функций-членов для проверки состояния вычислений.

(Я использую Python и модуль unittest.)

class Train: 

    def __init__(self, options, points): 
        self._options = options 
        self._points = points 
        # other initializations

    def run(self): 
        self._setup_mappings_dict() 
        self._setup_train_and_estimation_sets() 
        if self._options.estimate_method == 'per_class': 
            self._setup_priors() 
        self._estimate_all_mappings() 
        self._save_mappings() 

    def _estimate_all_mappings(): 
        # implementation, calls to methods in this class

    #other method definitions

У меня определенно есть ожидания относительно того, какими должны быть состояния атрибутов-членов до и после вызовов различных методов в рамках реализацииrun() метод. Должен ли я делать утверждения об этих «частных» атрибутах? Я не знаю, как еще протестировать эти методы.

Другой вариант заключается в том, что я действительно не должен проверять это.

Ответы на вопрос(2)

Ваш ответ на вопрос