使用resharper和phantom js调试jasmine测试

时间:2013-09-03 06:51:24

标签: unit-testing debugging resharper jasmine phantomjs

前一段时间已经提出了类似的问题How do you debug Jasmine tests with Resharper?建议的内容并不适用于我(将debugger;放在测试代码中)。每次运行测试时,都会打开一个新的浏览器窗口,并且线程会跳过调试器。有没有办法使它工作?还有没有办法用幻影跑步者和Resharper来调试茉莉花测试?

提前致谢

3 个答案:

答案 0 :(得分:12)

要在浏览器中进行调试,请将以下代码添加到您的js测试文件中。

jasmine.getEnv().currentRunner_.finishCallback = function () {};

Resharper将不会通知测试已完成,因此我们可以在打开的浏览器中设置调试断点(我使用chrome)和F5页面。

完成后,在resharper testrunner窗口中停止测试。

修改
从Jasmine 2.0开始,您需要使用:

ReSharperReporter.prototype.jasmineDone = function () { };

答案 1 :(得分:1)

杰森的回答非常有帮助。但我想补充一点,你必须在IE中启用脚本调试:Internet选项 - >高级 - >取消选中'禁用脚本调试(Internedt Explorer)'。
然后你可以将调试器放在你的js中,它将引发' Visual Studio即时调试器'弹出窗口。

答案 2 :(得分:0)

我得到了调试器;通过在ReSharper选项中将IE 11设置为我的测试浏览器来工作。很酷的是,您可以在Visual Studio版本的代码中设置断点,并使用Visual Studio进行设置和调试。您真的不需要与浏览器进行交互。