为什么 Chutzpah 不能识别所有 TypeScript 测试?

Why Chutzpah does not recognize all TypeScript tests?

我有一个包含以下内容的项目 chutzpah.json:

{
  "Framework": "jasmine",
  "TestHarnessReferenceMode": "AMD",
  "TestHarnessLocationMode": "SettingsFileAdjacent",
  "EnableTestFileBatching": true,

  "References": [
    { "Path": "node_modules/es6-shim/es6-shim.min.js" },
    { "Path": "node_modules/zone.js/dist/zone.min.js" },
    { "Path": "node_modules/reflect-metadata/Reflect.js" },
    { "Path": "node_modules/systemjs/dist/system.js" },
    { "Path": "system-config.js" }
  ],
  "CodeCoverageExcludes": ["node_modules/*"],
  "Tests": [
    { "Path": "app", "Includes": [ "*.spec.ts" ] }
  ]
}

和以下测试文件

测试资源管理器只显示存储在第一个文件中的测试

如果我尝试 运行 VSTest 的命令,我会得到相同的结果:

如果我调用设置文件名的命令(例如 "C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe" app\InspectionDataView.spec.ts /UseVsixExtensions:true ),文件 运行.

中的测试

加分:

我试过运行直接用Chutzpah.console.exe测试,结果是这样的:

我在这里错过了什么?

注意:使用 VS 2015 更新 3

Chutzpah 没有 运行TypeScript。它 "supports" 它,但你必须在 chutzpah.json 中添加此支持。

为什么第一个测试套件成功了?也许它是用纯 ES5 编写的(没有 ES6/TS 类、接口等)。

我确实从这个 repo https://github.com/mmanela/chutzpah/tree/master/Samples/Compilation/TypeScript

中设置了对 typescript 的 chutzpah 支持

基本上,简而言之:

  1. 创建一个 compile.bat 将 TS 转换为 ES5。通常 - tsc.exe 有或没有 tsconfig.json
  2. 添加 "Compile" 部分,如 https://github.com/mmanela/chutzpah/blob/master/Samples/Compilation/TypeScript/chutzpah.json
  3. 中所示

每次你 运行 chutzpah.console.exe

时,这会将 TS 转换为 ES5