我正在使用图书馆 gozk将我的应用程序与生产 zookeeper 服务器连接起来。我想测试应用程序是否创建了正确的节点,它们是否包含各种情况下的正确内容,以及 DataWatch 和 NodeWatch 是否设置正确:
即应用程序根据节点和数据更新执行应执行的操作。
我能否拥有一个仅在单元测试期间创建和销毁的模拟 zookeeper 服务器,并且能够人为地创建新节点并设置节点内容? 除了手动创建 zookeeper 服务器并使用它之外,还有其他方法吗?
java 的解决方案已经存在
最佳答案
我建议将您调用 zookeeper 的代码变成一个接口(interface)。
然后在测试期间,你在一个“mockZookeeperConn”对象中进行子操作,该对象只返回值,就好像它真的连接到服务器一样(但返回值是硬编码的)
关于unit-testing - 如何在 golang 中模拟 Zookeeper 服务器进行单元测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42096675/