如何在visual studio中调试typescript jasmine测试?

cri*_*mbo 5 karma-runner karma-jasmine

我在Karma中运行了typescript代码和typescript jasmine测试.我可以从命令行运行测试(使用Karma),也可以从ReSharper测试运行器运行测试.据推测,我也可以使用Karma Test Adapter VS扩展VS适配器为Karma运行测试.因此,有很多运行测试的选项.

我的问题是:如何在VS调试器中调试测试?

cri*_*mbo 1

我能够对typescript jasmine 测试进行 Visual Studio 调试,在 Karma 中运行,工作正常。哇,真是一口。

我是这样做的:

  1. 在 IE、选项、高级中:清除“禁用脚本调试 (Internet Explorer)”复选框。
  2. 安装运行 karma 所需的节点模块(全局) - 如果您还没有:
npm install -g karma karma-chrome-launcher karma-ie-launcher jasmine-core karma-jasmine karma-jasmine-html-reporter
npm install -g phantomjs karma-phantomjs-launcher
Run Code Online (Sandbox Code Playgroud)
  1. 在 中karma.conf.js,添加对提供所需源映射和打字稿文件的支持。这是我的:
npm install -g karma karma-chrome-launcher karma-ie-launcher jasmine-core karma-jasmine karma-jasmine-html-reporter
npm install -g phantomjs karma-phantomjs-launcher
Run Code Online (Sandbox Code Playgroud)
  1. 编译你的打字稿后,运行 karma,启动 IE:
karma start --browsers=IE --reporters=html
Run Code Online (Sandbox Code Playgroud)
  1. 在 Visual Studio 中,“调试”菜单 | 附加到 Process... ,然后选择看起来正确的 iexplore.exe 实例 - 例如,标题可能与 Karma 网页标题匹配(当前为“Karma DEBUG RUNNER”),并且进程类型必须为“Script”。如果打字稿调试不起作用,请尝试添加多个 iexplore.exe 实例,包括所有可能的 Script 实例。

之后,您应该在解决方案资源管理器中看到一个“脚本文档”文件夹,并且您应该能够在打字稿中放置断点,在浏览器中运行测试,并单步执行打字稿代码。

事实证明,所有这些步骤也适用于在 Chrome 中调试 Typescript 测试和代码 - 只需将步骤 4 更改为:

karma start --browsers=Chrome --reporters=html
Run Code Online (Sandbox Code Playgroud)

(跳过第5步)然后打开Chrome开发者工具在chrome中调试typescript。