如何在测试方法中模拟受保护/私有方法?

2024-09-28 21:51:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个Python Clas,有两个方法。

第一个_getTemperature_()受保护,第二个是公共方法。我必须编写一个unitTest,但我不知道如何模拟受保护的方法?我刚刚找到了一些教程来模拟在test direct中使用的公共方法。但不是用一种值得检验的方法。

class StateOn(self):

    #Temperature in °C
    _target = 15

    # currrent Temperature by Sensor in °C
    def _getTemperature_(self):
        return valueFromSensorXY()


    def validateTemperature(self):
        if self._getTemperature_() >= self._target:
            return StateOff()

有人能给我一个提示,或者一个解释来找到解决这个问题的方法吗?


Tags: 方法intestselftargetreturndef教程