我使用ember-cli
构建了一个Ember应用程序,并且我使用ember-qunit
测试适配器编写测试并使用testem
按照ember-cli
在浏览器中运行它们{1}}文档。虽然当我对我的应用程序感兴趣时,谷歌浏览器中的调试工作正常,但在运行我的测试时,我无法使用许多调试功能,如断点。
我经常遇到一个问题,即我的测试失败,尽管我的实际应用程序似乎正常工作,并且在我的测试运行时调查我想要逐步执行代码的问题。
但当我进入vendor.js
中显示的代码时,我只是在vendor.js
中看到以下内容:
// Please wait a bit.
// Compiled script is not shown while source map is being loaded!
这两行是第6行和第6行。 7的文件。前面的行是空白的,这两行是文件中的最后一行。调试器将文件的第一行突出显示,好像它是源中的当前位置,但由于某种原因它无法显示源。
我可以继续执行代码,但我看不到任何内容。
但是,如果我在开发人员工具源文件列表的源列表中找到vendor.js
,那么它将作为单独的源选项卡打开,我可以看到我的所有代码。此时,我有两个标签为vendor.js
的标签,一个标签包含我所有的供应商资产,另一个标签只包含上面引用的那些标签。
我猜测我的测试服务方式与在Chrome开发环境中如何提供应用程序之间存在一些不同之处。
我使用的是以下版本的内容:
ember 1.9.1
ember-data 1.0.0-beta.14.1
ember-cli 0.1.9
qunit 1.17.1
ember-qunit 0.2.0
testem 0.6.33
尽管我已经探讨了一堆问题,但我还是没有任何线索可以解决问题所在。也许它与testem
如何运行测试有关?或者它可能是我的测试中包含的东西有一个混乱的源地图?
我感谢任何帮助或想法。
答案 0 :(得分:1)
我在使用ember-cli 0.2.2。
我也遇到了这个问题,发现这个Chrome issue有处理源图。 评论此问题的人建议暂时使用Chrome Canary版本:
我目前正在使用Canary构建来设置断点并调试我的余烬代码。