WebStorm 如何知道 运行 进行哪个测试?

How does WebStorm know which test to run?

我正在做一个在 WebStorm 中使用 Karma + Mocha + TypeScript + Webpack 的大项目。

karma.conf.js 中,我指定以这种方式处理哪些文件:

for (const filePaths of filesToTest) {
  preprocessors[filePaths] = ['webpack', 'sourcemap']
}

preprocessors: {
  ...preprocessors
}

filesToTest包含所有的测试文件,用Webpack编译需要很多时间。

在 WebStorm 中,除了测试之外还有一个小的播放按钮,它只允许 运行 指定的测试:

按下这个播放按钮将花费很长时间编译我所有的测试文件,然后 WebStorm 将以某种方式 运行 我需要的一个测试(它在“要测试的文件”部分中指定)创建了 运行 配置)。

所以我的问题是:在我的 karma.conf 中有没有办法“捕获”这个“要测试的文件”参数,这样我就只能预处理所需的文件(例如,它是一个环境变量)?

事实证明,截至 2021 年 6 月,这是不可能的。Jetbrains 认为,不需要这样的东西,因为 Karma 启动时间太慢,最好始终编译所有测试:https://youtrack.jetbrains.com/issue/WEB-49930