Chutzpah - getting "Error: One or more errors occurred." in chutzpah.json
Chutzpah - getting "Error: One or more errors occurred." in chutzpah.json
我正在开发一个 .NET 项目,并在客户端使用 Angular 1.5 和 TypeScript。对于测试用例执行和代码覆盖,我使用 Jasmine + Chutzpah。 Chutzpah 与 Visual Studio 2013 集成。
在我的项目中,客户端测试用例数量为 1400+。现在我开始面临测试用例发现和客户端代码覆盖率的问题。当前 Chutzpah.json 文件测试用例未被发现,但当我更改特定文件的路径时,它开始发现测试用例。请在下面找到 chutzpah.json:
{
"Framework":"jasmine",
"TestFileTimeout":"3600000",
"ExpandReferenceComments": "false",
"ExpandTestFileBatching":"true",
"TestHarnessReferenceMode": "AMD",
"TestHarnessLocationMode": "SettingsFileAdjacent",
"Compile": {
"Mode": "External",
"Extensions": [".ts"],
"ExtensionsWithNoOutput": [".d.ts"]
},
"References": [
{"Path": "Scripts/require.js"},
{"Path": "Scripts/angular.js"}
],
"Tests": [
{"Path": "app/TestCases/"}
],
"CodeCoverageIncludes": ["app/module1/controllers/*.ts", "app/module1/module2/*.ts"],
"CodeCoverageExcludes": ["*.d.ts", "Scripts/*", "*Spec.ts"],
"EnableCodeCoverage": "true"
}
现在使用上面的 chutzpah.json 我得到超时错误,当我在 "Path" 中为 "Tests" 提供完整的文件名时它开始发现测试用例。
"Tests": [
{"Path": "app/TestCases/testCaseSpec.ts"}
]
我还安装了 VisualStudio 库中的实用程序,以在 visual studio 本身中集成测试用例执行和代码覆盖率,但我无法获得它。当我尝试通过右键单击 TestCases 文件夹并选择 "show code coverage" 来获取代码覆盖率时,它显示 710 个通过,54 个失败,总共 764 个。但我有超过 1400 个测试用例。不确定为什么它只运行 764。
首先,你的一些属性是错误的。
- 是 EnableTestFileBatching 不是 ExpandTestFileBatching
EnableCodeCoverage 已弃用,请忽略它。默认情况下,Chutzpah 也会 运行 chutzpah 当你问它时。如果您希望它始终 运行 使用此 属性
"CodeCoverageExecutionMode": "Manual|Always|Never",
乍一看,我建议进行一些修改。将 "IsTestFrameworkFile": true 放在你的两个引用上。这将确保 chutzpah 将它们放在覆盖引擎 (Blanket) 之前。
另外,TestCases 文件夹中有什么?它只是测试还是其他文件?
我正在开发一个 .NET 项目,并在客户端使用 Angular 1.5 和 TypeScript。对于测试用例执行和代码覆盖,我使用 Jasmine + Chutzpah。 Chutzpah 与 Visual Studio 2013 集成。
在我的项目中,客户端测试用例数量为 1400+。现在我开始面临测试用例发现和客户端代码覆盖率的问题。当前 Chutzpah.json 文件测试用例未被发现,但当我更改特定文件的路径时,它开始发现测试用例。请在下面找到 chutzpah.json:
{
"Framework":"jasmine",
"TestFileTimeout":"3600000",
"ExpandReferenceComments": "false",
"ExpandTestFileBatching":"true",
"TestHarnessReferenceMode": "AMD",
"TestHarnessLocationMode": "SettingsFileAdjacent",
"Compile": {
"Mode": "External",
"Extensions": [".ts"],
"ExtensionsWithNoOutput": [".d.ts"]
},
"References": [
{"Path": "Scripts/require.js"},
{"Path": "Scripts/angular.js"}
],
"Tests": [
{"Path": "app/TestCases/"}
],
"CodeCoverageIncludes": ["app/module1/controllers/*.ts", "app/module1/module2/*.ts"],
"CodeCoverageExcludes": ["*.d.ts", "Scripts/*", "*Spec.ts"],
"EnableCodeCoverage": "true"
}
现在使用上面的 chutzpah.json 我得到超时错误,当我在 "Path" 中为 "Tests" 提供完整的文件名时它开始发现测试用例。
"Tests": [
{"Path": "app/TestCases/testCaseSpec.ts"}
]
我还安装了 VisualStudio 库中的实用程序,以在 visual studio 本身中集成测试用例执行和代码覆盖率,但我无法获得它。当我尝试通过右键单击 TestCases 文件夹并选择 "show code coverage" 来获取代码覆盖率时,它显示 710 个通过,54 个失败,总共 764 个。但我有超过 1400 个测试用例。不确定为什么它只运行 764。
首先,你的一些属性是错误的。
- 是 EnableTestFileBatching 不是 ExpandTestFileBatching
EnableCodeCoverage 已弃用,请忽略它。默认情况下,Chutzpah 也会 运行 chutzpah 当你问它时。如果您希望它始终 运行 使用此 属性
"CodeCoverageExecutionMode": "Manual|Always|Never",
乍一看,我建议进行一些修改。将 "IsTestFrameworkFile": true 放在你的两个引用上。这将确保 chutzpah 将它们放在覆盖引擎 (Blanket) 之前。
另外,TestCases 文件夹中有什么?它只是测试还是其他文件?