tl; dr 当实习生编写的测试出现错误时,我似乎没有收到描述错误发生在哪一行的错误消息。我找到了一种解决方法,但它并不是真正理想的解决方案,因为它涉及弄乱依赖项目中的代码。有没有人有更好的方法/我只是做错了吗?谢谢!
详细信息:我已经多次看到,当解析用实习生编写的测试时出现问题(例如未能关闭括号、引号等),没有报告发生错误的实际行,并且只有一个像这样的错误(我已经将实际路径作为一个工作项目,但你明白了要点):
SyntaxError: Unexpected identifier
at Function.vm.runInThisContext (<myproject>/node_modules/intern/node_modules/istanbul/lib/hook.js:163:16)
at <myproject>/node_modules/intern/node_modules/dojo/dojo.js:745:8
at fs.js:266:14
at Object.oncomplete (fs.js:107:15)
我戳了一下,发现 vm.runInThisContext 有一个未记录的(? - 它不在此处)参数,如果启用该参数,它实际上提供了原始错误的详细信息(此处和此处)-关于这将如何发挥的一些讨论但是如果我在伊斯坦布尔(如果它正在运行)中切换 dojo.js 和 hook.js 以使用此参数,我会收到如下错误消息:
<myproject>/test/publisherConfigSpec.js:16
errorCb cat = dfd.rejectOnError(function(error) {
^^^
SyntaxError: Unexpected identifier
at Function.vm.runInThisContext (<myproject>/node_modules/intern/node_modules/istanbul/lib/hook.js:163:16)
at <myproject>/node_modules/intern/node_modules/dojo/dojo.js:745:8
at fs.js:266:14
at Object.oncomplete (fs.js:107:15)
这是我想要的输出(或者至少大大提高了我发现和修复错误的机会),但它并不适合搞乱节点依赖关系,而且在我看来,它可能会因为拉动而变化太多请求(请参阅API 的最新更新)当解析测试代码输入出错时,是否有另一种获取有用输出的方法?
感谢您的任何建议:)