IDEA nodejs mocha测试被识别,但作为代码运行

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

在IntelliJ IDEA Ultimate 2017.1中,我有一个包含许多NPM模块的大型nodejs项目。他们中的大多数包含test sub-dir和Mocha测试。 IDEA可以很好地识别和运行大多数项目的测试(describe() + it()),显示一个不错的测试界面和运行结果,除了一个。对于一个项目,它识别测试(显示describeit右侧的绿色箭头),但是当运行时,它将使用节点解释器将其作为常规代码运行,这显然会失败。

如何确保项目的测试作为Mocha运行?

附:当我添加“mocha”调试配置文件时,如果我手动启动mocha运行/调试配置文件,它运行正常。

P.P.S.我设法通过编辑.idea/workspace.xml解决它 - 由于某种原因它包含这个元素。删除它使一切正常。我希望有一种方法可以从UI做到这一点。

<configuration default="false" name="routeTest.js" type="NodeJSConfigurationType" factoryName="Node.js" path-to-node="project" path-to-js-file="routeTest.js" working-dir="$PROJECT_DIR$/server/test"> <method /> </configuration>

node.js intellij-idea mocha
2个回答
0
投票

根据您的描述,似乎问题是由现有的Node.js运行配置引起的,其中“JavaScript文件”设置为您的mocha测试文件(routeTest.js)。与当前文件关联的显式创建的运行配置优先于从上下文自动生成的运行配置。删除配置应该可以解决问题。


0
投票

我发现它是由karmapackage.json依赖引起的。目前唯一的解决方法是手动设置初始mocha测试运行配置,然后我们可以通过单击图标来运行测试。

更新:它是由Idea中的bug引起的,它已经修复。如果你同时使用karma-mocha和mocha测试,请注意最后的comment

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