我有一个Python脚本放在远程供应商服务器上,然后运行该服务器导入模块(本地无法使用)。
from onlyonremoteserver.remoteaccessonly import CustomRemoteClass
sensor = CustomRemoteClass()
sensor.add_channel(channel_name="Status",unit="Count",value=status,is_limit_mode=True,limit_max_error=1.5,limit_max_warning=0.5)
sensor.add_channel(channel_name="Number Of Data Nodes",unit="Count",value=output['number_of_data_nodes'])
sensor.add_channel(channel_name="Number of Nodes",unit="Count",value=output['number_of_nodes'])
我如何模拟一个我无法访问的类?是否可以存根已知的类名add_channel func(及其参数)
我也在想这就是写入方法,也许我只是编写不同的运行案例,如果远程执行则完全跳过本节。
答案 0 :(得分:1)
答案 1 :(得分:0)
YES! unittest has mocking built in。
使用单元测试来开发代码是可行的方法 如果您使代码执行case语句或try / catch块以查看您是否处于测试环境与部署之间,那么您将受到客户的抨击。或者,希望你会。因此,使用他们的API来创建一个模拟类,unittest将允许您利用该模拟类,而不必在导入语句中放置那些可怕的try / catch块。