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

时间:2015-11-05 17:58:34

标签: karma-runner karma-jasmine

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

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

1 个答案:

答案 0 :(得分:1)

我能够获得 Visual Studio调试的nickcript jasmine测试,在Karma中运行,正常工作。哇,那是满口的。

以下是我的表现:

  1. 在IE中,选项,高级:清除"禁用脚本调试(Internet Explorer)"复选框。
  2. 安装运行业力所需的节点模块(全局) - 如果您还没有:
  3. 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
    
    1. karma.conf.js中,添加对提供所需的源地图和打字稿文件的支持。这是我的:
    2. module.exports = function(config) {
        config.set({
          frameworks: ['jasmine'],
          files: [
            'bower_components/angular/angular.js',
            'bower_components/angular-mocks/angular-mocks.js',
            'dist/**/*.js',
            'test/out/**/*.js',
            // Key addition to support debugging typescript tests
            // Enable serving (but don't include as scripts) sourcemap and typescript files
            {pattern: '**/*.js.map', included: false},
            {pattern: '**/*.ts', included: false}
          ],
          reporters: ['html', 'progress'],
          port: 9876,
          colors: true,
          logLevel: config.LOG_INFO,
          autoWatch: true,
          browsers: ['PhantomJS']
        });
      
      }
      
      1. 编译打字稿后,运行业力,启动IE:
      2. karma start --browsers=IE --reporters=html
        
        1. 在Visual Studio中,“调试”菜单|附加到进程...,然后选择看起来正确的iexplore.exe实例 - 例如标题可能与Karma网页标题匹配(" Karma DEBUG RUNNER"当前),并且进程类型必须是"脚本"。如果打字稿调试不起作用,请尝试添加多个iexplore.exe实例,包括所有可能的脚本实例。
        2. 之后,您应该看到一个"脚本文档"解决方案资源管理器中的文件夹,您应该能够在打字稿中放置断点,在浏览器中运行测试,并逐步完成打字稿代码。

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

          karma start --browsers=Chrome --reporters=html
          

          (跳过第5步)然后打开Chrome开发人员工具以调试chrome中的打字稿。