也许这不是正确的方法(对想法开放),但是如果不需要的话,我想关闭一些测试环境的pubsub。
注意:我并不是想使用一个假的pubsub服务(pubsub模拟器),但我希望web应用程序不会发布/订阅任何内容,除非选中isPubsubEnabled everywhere这样的标志。
我在考虑将这些方法存根出来,所以在node.js中
this.pubsub = new NoOpPubsub();
this.pubsub.topic('my-topic').publisher().publish(my-message); // no-op and no error有什么想法吗?我做的是不好的吗?
发布于 2019-02-19 01:46:40
你所做的听起来像是一个假的实现(尽管是一个最小的功能)。这种方法没有错,尽管我建议如果这些是单元测试,请使用unittest.mock之类的模拟,这样您就可以检查发布到pubsub的值是否正确。
如果您正在考虑为一个长期运行的环境实现一个伪代码,那么运行pubsub emulator可能是最好的选择,因为在给定网络请求开销、批处理和其他条件的情况下,它会给您带来一些实际的结果,同时还可以将您的消息传播到同一测试环境中的订阅者。但同样,这在很大程度上决定了什么是最适合您的用例。如果你只是想在没有pubsub的情况下测试所有其他功能,那么只需使用NoOp伪就可以了。
https://stackoverflow.com/questions/54745206
复制相似问题