gpt4 book ai didi

unit-testing - 使用依赖网络的代码进行单元测试

转载 作者:行者123 更新时间:2023-11-28 19:43:55 25 4
gpt4 key购买 nike

我正在尝试更好地对我的代码进行单元测试,但现在我正在编写大量处理远程系统的代码。 SNMP、WMI 之类的东西。对于大多数类,我可以模拟对象来测试它们,但是您如何处理真实系统的单元测试?例如,如果我的类(class)出去并获取服务器的 Win32_LogicalDisk 对象,我怎么可能对它进行单元测试?

最佳答案

假设您的意思是“我如何针对难以/不可能模拟的事物进行测试”:

如果你有一个类“出去并获取服务器的 Win32_LogicalDisk 对象”并做其他事情(以某种方式使用“Win32_LogicalDisk”对象),假设你想测试使用它的类的各个部分对象,您可以使用 Dependency Injection允许您模拟“Win32_LogicalDisk”对象。例如:

class LogicalDiskConsumer(object):

def __init__(self, arg1, arg2, LogicalDiskFactory)
self.arg1=arg1
self.arg2=arg2
self.LogicalDisk=LogicalDiskFactory()

def consumedisk(self):
self.LogicalDisk.someaction()

然后在您的单元测试代码中,传入一个“LogicalDiskFactory”,它返回“Win32_LogicalDisk”的模拟对象。

关于unit-testing - 使用依赖网络的代码进行单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44338/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com