Chutzpah在使用AMD模块的Typescript中未检测到茉莉花测试

问题描述 投票:0回答:1

我们正在尝试找出一种用于UI测试的方法,并且认为chutzpah将是一个不错的选择。我使用typescript和requirejs编写了茉莉花测试。 Chutzpah能够检测未导入任何外部模块的样本测试。但是,当我尝试导入要测试的外部模块时,chutzpah似乎无法在测试资源管理器中检测到测试。这是我的回购链接:https://github.com/NareshNow/UItesting.git

这是我的chutzpah json文件:

"Framework": "jasmine",
"TestHarnessReferenceMode": "AMD",
"TestHarnessLocationMode": "SettingsFileAdjacent",
"AMDBaseUrl": "../Compiledmodules/Tests",
"AMDAppDirectory": "../Compiledmodules",
"TestFileTimeout": 600000,
"EnableCodeCoverage": false,
"References": [

{
  "Path": "../Scripts/require.js",
  "IsTestFrameworkFile": true
},
{
  "Path": "../Scripts/AMDconfig.js",
  "IsTestFrameworkFile": true
}
],
"Compile": {
"Mode": "External",
"Extensions": [ ".ts" ],
"ExtensionsWithNoOutput": [ ".d.ts" ],
"SourceDirectory": "../Typescripts",
"OutDirectory": "../Compiledmodules"
},
"Tests": [
{
"Path": "../Typescripts",
"Includes": [ ".ts" ]
},
{
"Path": "../Compiledmodules",
"Includes": [".js"]
}
]
}

在过去的5天中,我已经尝试过针对类似问题的许多先前问题的建议,但似乎没有任何效果。在我看来,缺少一些简单的东西。您可以在存储库的TypescripKit文件夹中找到测试chutzpah.json。任何帮助将不胜感激。谢谢!

typescript jasmine requirejs amd chutzpah
1个回答
0
投票

我终于让它工作了。没有时间在这里发布。这就是问题所在。我的目标是tsconfig.json中的ES2015。 ES2015不会将打字稿类转换为函数,而是使用class关键字本身。因此,我在茉莉花测试中访问它的方式适用于ES5,而且我还在茉莉花测试中describe块开始之前声明了变量。这使chutzpah无法将它们识别为测试。因此,一旦我将目标更改为ES5并在describe内声明了变量,chutzpah就可以检测到测试。

© www.soinside.com 2019 - 2024. All rights reserved.