gpt4 book ai didi

unit-testing - JS 单元测试未出现在 VS 2015 测试资源管理器中

转载 作者:搜寻专家 更新时间:2023-10-30 20:40:34 25 4
gpt4 key购买 nike

我是 JavaScript 单元测试的新手。我正在尝试测试 typescript 类,我的测试也是用 typescript 编写的,如下所示:

/// <reference path="../../typings/qunit/qunit.d.ts" />
import Utility1 = require("../utility");//This is script I want to test.

test("utility_test",function() {

...

var result = ...;
var expected = ...;
equal(result, expected, "Test failed");
})

我正在使用 VS 2015,如图所示安装了 chutzpah 测试适配器 here .需要说明的是,我已经安装了这个扩展到 vs 2015:Chutzpah Test Runner Context Menu Extension , 和 Chutzpah Test Adapter for the Test Explorer并添加了 Chutzpah NuGet 包。

然而,当我构建我的项目时,测试没有出现在测试资源管理器中。当我尝试从上下文菜单运行测试时,它失败并出现此错误:Error: Error: Called start() outside of a test context while already started

谁能告诉我哪里出错了?


编辑对于使用 require.js 寻找解决方案的人,this here为我工作。现在我的 Chutzpah.json 如下所示:

{
"Framework": "qunit",
"CodeCoverageExcludes": [ "*/require.config.js" ],
"TestHarnessReferenceMode": "AMD",
"TestHarnessLocationMode": "SettingsFileAdjacent",
"TypeScriptModuleKind": "AMD",
"AMDBaseUrl": "",
"EnableTestFileBatching": true,
"Compile": {
"Mode": "External",
"Extensions": [ ".ts" ],
"ExtensionsWithNoOutput": [ ".d.ts" ]
},
"References": [
{ "Path": "require.js" },
{ "Path": "require.config.js" },
],
"Tests": [
{ "Path": "jsTests" }
]
}

最佳答案

Chutzpah 不再在其中捆绑 Typescript 编译器(从版本 4 开始)。您必须告诉 Chutzpah 在哪里可以找到您生成的 .js 文件(或者/以及如果需要的话如何编译它们)。

参见 the documentation for the Compile setting以及these code samples .

大多数人在使用 Visual Studio 时会使用外部编译模式,因为 VS 可以为您编译 .ts 文件,您只需要告诉 Chutzpah 在哪里可以找到它们。看起来像这样:

{
"Compile": {
"Mode": "External",
"Extensions": [".ts"],
"ExtensionsWithNoOutput": [".d.ts"]
},
"References": [
{"Includes": ["*/src/*.ts"], "Excludes": ["*/src/*.d.ts"] }
],
"Tests": [
{ "Includes": ["*/test/*.ts"], "Excludes": ["*/test/*.d.ts"] }
]
}

关于unit-testing - JS 单元测试未出现在 VS 2015 测试资源管理器中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31739452/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com