使用Resharper在Typescript单元测试中引用Javascript依赖项

时间:2014-05-05 18:58:41

标签: unit-testing resharper typescript resharper-8.0

我正在编写一个集成测试,以涵盖我所拥有的一些Typescript类,而那些Typescript类依赖于第三方JS库。

集成测试也是用Typescript编写的。当我使用Resharper的内置支持运行测试时,浏览器中出现JS错误,指出无法找到第三方依赖项。当然,在构建浏览器的测试页面时,测试运行器尚未添加对它们的引用。我尝试使用测试文件中的<reference>语句添加引用,但IDE(VS 2013)抱怨您只能用于引用其他Typescript文件 - 而不是Javascript文件。

我该如何解决这个问题?

我过去曾使用过Chutzpah测试运行器及其各种VS插件,这让我可以使用<chutzpah_reference>语句定义这样的引用。但我想知道从现在开始是否可以使用Resharper ......

1 个答案:

答案 0 :(得分:0)

JetBrains为Resharper提供了这个:https://youtrack.jetbrains.com/issue/RSRP-389196,提出了以下解决方法。

在TypeScript测试文件中包含对* .d.ts文件的引用。然后将第三方JS库放在同一目录中匹配的.d.js文件中。

例如,如果你想引用trial.js文件,就像你说的那样,你不能这样做,因为打字稿抱怨:

/// <reference path="scripts/trial.js" />

相反,请在scripts / trial.d.ts创建一个文件并添加

/// <reference path="scripts/trial.d.ts" />

然后将scripts/trial.js重命名(或复制)到scripts/trial.d.js。 Resharper测试运行器将看到trial.d.ts参考,并在其生成的测试夹具HTML中包含trial.d.js脚本。