【问题标题】:Delaying stub answer in Javascript在Javascript中延迟存根答案
【发布时间】:2017-06-29 17:17:24
【问题描述】:

在我的生产代码中,我有一个函数会阻塞程序 10 毫秒(因为使用 execSync)。在我的测试中,我使用了 testdouble.js 库来存根它:

td.when(getSignalStrength()).thenReturn.apply(null, array);

但是,存根会立即响应,而实际上函数 getCurrentSignalStrength 会在 10 毫秒后响应。我想延迟存根的答案,所以测试会更接近现实。我阅读了 testdouble.js 的文档: https://github.com/testdouble/testdouble.js/blob/master/docs/5-stubbing-results.md#delay 但不幸的是,delay 选项似乎不适用于 thenReturn 方法。那么如何延迟存根回答呢?

【问题讨论】:

    标签: javascript node.js stub stubbing testdoublejs


    【解决方案1】:

    没有办法让 testdouble.js 阻塞执行线程。正如文档中所说,即使是 deferdelay 也不受欢迎。

    这听起来像是一个过度防御性规范的例子;这种情况下的“答案”是考虑您是否真的需要阻塞和延迟 10 毫秒。这在您的设计中说明了什么?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-05-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-08
      • 1970-01-01
      • 2020-10-21
      相关资源
      最近更新 更多