是否有我修补的函数,以便我可以使用模拟方法作为传感器数据的返回值?
我想做的是为我将使用 Adafruit BMP280 传感器测量的传感器数据编写测试。我想编写可以在我的计算机上运行的测试,这样我就不需要物理插入传感器并收集数据来测试代码的有效性。我遇到的问题是 Adafruit-PlatformDetect 阻止我运行任何 circuitpython 函数。
我现在拥有的是:
@patch('board.SCL', MagicMock())
@patch('board.SCA', MagicMock())
@patch('busio.I2C')
@patch('adafruit_bmp280.Adafruit_BMP280_I2C')
def test_sum_func(Adafruit_BMP280_I2C: MagicMock, I2C: MagicMock):
i2c = busio.I2C(board.SCL, board.SDA)
bmp280 = adafruit_bmp280.Adafruit_BMP280_I2C(i2c)
bmp280.pressure = 30
当我运行它时,我收到错误:“NotImplementedError:Adafruit-PlatformDetect 版本 3.15.3 无法识别运行 Windows 平台的板和/或微控制器。请确保您正在运行最新的软件包:'pip3 install --upgrade adafruit-blinka adafruit-platformdetect'"
Board.py
自动检查以查看代码正在哪个设备上运行,我认为我需要修补类似adafruit_blinka.agnostic.detector
in 并让其中一个参数 return True
,但我不知道该怎么做。任何帮助将不胜感激。