编写一个 Discord 机器人的命令在 10 分钟后超时的单元测试有意义吗?

问题描述 投票:0回答:1

我正在discord.js 中创建一个discord 机器人并使用Jest 编写单元测试。

它是一个人工智能艺术机器人,有一个名为 /generate 的命令,可以使用第 3 方 API 生成图像。此第 3 方 api 在 10 分钟后超时 - 因为有时图像在其端没有生成。

我有代码每 5 秒轮询一次生成状态,10 分钟后超时。

测试我的命令 /generate 在 10 分钟后超时是否有意义?如果是,我将如何模拟第 3 方 API?测试时我是否必须等待整整 10 分钟,或者我该如何实际测试?

unit-testing
1个回答
0
投票

是的,测试这可能是有意义的。将超时持续时间设置为变量,并在生产中将其设置为 10 分钟,但在开发中将其设置为更短的时间段(几百毫秒)。本质上,您的代码应该 ping API,在这么短的时间内没有得到响应,并且“超时”。这可以让您测试重置过程。

如果您确实想测试它是否在 10 分钟后超时,可能最好手动执行此操作。等待 10 分钟才能运行测试会很烦人。

© www.soinside.com 2019 - 2024. All rights reserved.