我正在开发一个.NET项目,并在客户端使用带有TypeScript的Angular 1.5。对于测试用例执行和代码覆盖,我使用的是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"中提供完整的文件名一样。 for" Tests"它开始测试案例。
"Tests": [
{"Path": "app/TestCases/testCaseSpec.ts"}
]
此外,我已安装VisualStudio库中的实用程序,以在Visual Studio本身集成测试用例执行和代码覆盖,但我无法得到它。当我尝试通过右键单击TestCases文件夹并选择"显示代码覆盖率"来尝试获得代码覆盖时,它表示710通过,54则失败Total 764.但是我有超过1400个测试用例。不知道为什么它只运行764.
答案 0 :(得分:0)
首先,你的一些属性是错误的。
不推荐使用EnableCodeCoverage,请忽略它。默认情况下,当你提出问题时,Chutzpah会运行chutzpah。如果您希望它始终运行使用此属性
" CodeCoverageExecutionMode":"手动|始终|从不",
乍一看,我建议进行一些编辑。在你的两个引用上放置" IsTestFrameworkFile":true。这将确保chutzpah将它们放在覆盖引擎(Blanket)之前。
另外,TestCases文件夹中有什么?它只是测试或其他文件吗?