小编Mar*_*ban的帖子

使用ScheduledExecutorService的测试代码(不使用Sleep)

我有一个验证对象,它通过一系列检查来运行输入。如果输入未通过任何检查,则验证结束。

通过所有检查的输入将根据滑动时间窗口进行分组。当第一个输入到达时,此窗口将启动。所以这是流程:

1)第一个输入到达。2)输入通过所有检查。3)由于没有活动的计时器,因此输入被放入新的篮子中。计时器窗口开始N秒。4)在此计时器窗口内通过所有检查的所有后续输入将被分组到同一篮子中。5)一旦计时器关闭,便发出篮子。6)任何其他有效输入将启动一个新计时器,然后重复该过程。

目前,为了确保有效的输入正确组合在一起,我在单元测试中使用Thread.sleep(即,一旦发送了许多输入,我会睡几秒钟,然后醒来并确保篮子已分发的内容包含预期的所有内容)。

由于我有700多个单元测试,这开始变得令人讨厌,并且每次我运行完整套件时,此测试集合都是瓶颈。

时间窗口只是一个ScheduledExecutorService。为了能够更快地测试此功能,我应该创建一个可设置的时间窗口对象吗?

java junit multithreading unit-testing scheduledexecutorservice

5
推荐指数
1
解决办法
4802
查看次数

ES6是否不需要命名函数表达式?

因此,在阅读了TJ Crowder对这个问题的回答之后,似乎ES 6规范具有推断绑定到变量名的匿名函数的函数名的规则.我们还需要使用命名函数表达式吗?看起来ES6使它变得不必要了.

javascript function

5
推荐指数
1
解决办法
98
查看次数