我正在使用Jest 21.2.1
来为反应应用程序运行测试。奇怪的是,当我运行jest --watch
(如上所述here)来观察任何更改的测试用例时,我收到如下错误
Determining test suites to run...Error: This promise must be present when running with -o.
我试图检查Jest-CLI,发现该函数需要两个参数,其中一个是promise,在这种情况下没有传递(不知道我怎么能传递它)。也许有些缺少配置?
任何建议都有助于解决此问题。
getTestPaths(
globalConfig,
changedFilesPromise)
{var _this2 = this;return _asyncToGenerator(function* () {
const paths = globalConfig.nonFlagArgs;
if (globalConfig.onlyChanged) {
if (!changedFilesPromise) {
throw new Error('This promise must be present when running with -o.');
}
return _this2.findTestRelatedToChangedFiles(changedFilesPromise);
}
注意:它可能与报告的问题here有关。
答案 0 :(得分:2)
确保您在Git仓库中运行它(使用git init
初始化)。否则它不知道如何只获取更改的文件。
如果您不想仅对已更改的文件运行测试,则可以使用运行所有测试的--watchAll
。