有没有办法并行 运行 Busted 测试套件?

Is there a way to run a Busted test suite in parallel?

我的 Lua 项目的测试套件在 spec/ 目录中分成多个文件。 有没有办法并行询问 busted to 运行 那些测试?如果我在没有任何参数的情况下调用 busted,它 运行 将按顺序执行所有测试。

我不太了解 Busted 库,但显然你想要的是使用 多线程

线程基本上就是代码逐行执行到结束的过程。当我们为一段代码创建更多的线程时,多个循环、函数等...在这个新的Thread中,它们与原来的代码同时执行,不干扰进程,也就是说,不止一件事是并行执行。

不幸的是Lua不包含执行多线程的方法,它与线程一起工作的最多是协程。但是,有像 lua-llthreads 这样的库可以执行此任务,请尝试一下,看看您的想法。通过使用 Busted 将它与您的代码结合起来,您将能够执行并行任务

似乎可行的一件事是一次使用 GNU Parallel 到 运行 多个测试脚本。

parallel busted -o utfTerminal ::: spec/*_spec.lua

-o utfTerminal 是告诉 busted 使用熟悉的“绿色圆圈”输出,而不是重定向标准输出时使用的简化文本输出。