我在Karma中运行了typescript代码和typescript jasmine测试。我可以从命令行运行测试(使用Karma),也可以从ReSharper测试运行器运行测试。据推测,我也可以使用Karma Test Adapter VS extension或VS Adapter for Karma运行测试。因此,有很多运行测试的选项。
我的问题是:如何在VS调试器中调试测试?
答案 0 :(得分:1)
我能够获得 Visual Studio调试的nickcript jasmine测试,在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
karma.conf.js
中,添加对提供所需的源地图和打字稿文件的支持。这是我的: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']
});
}
karma start --browsers=IE --reporters=html
之后,您应该看到一个"脚本文档"解决方案资源管理器中的文件夹,您应该能够在打字稿中放置断点,在浏览器中运行测试,并逐步完成打字稿代码。
事实证明,所有这些步骤也可用于调试Chrome中的Typescript测试和代码 - 只需将步骤4更改为:
karma start --browsers=Chrome --reporters=html
(跳过第5步)然后打开Chrome开发人员工具以调试chrome中的打字稿。