我正在尝试使用tsUnit在Typescript中设置单元测试。我创建了一个非常简单的测试,以确保我做得对。但是,每次我在测试资源管理器中单击“全部运行”时,它都不会显示任何结果!似乎Visual Studios 2013在我的解决方案中找不到任何有效的测试。以下是我在代码中的内容:
width:30%
在我的主要html文件中,我有:
/// <reference path="../../UnitTesting/UnitTesting/Scripts/tsUnit/tsUnit.ts" />
module CalculationsTests {
export class SimpleMathTests extends tsUnit.TestClass {
addTwoNumbersWith1And2Expect3() {
var result = 1 + 2;
this.areIdentical(3, result);
}
addTwoNumbersWith3And2Expect5() {
var result = 3 + 6;
this.areIdentical(4, result); // Deliberate error
}
}
}
window.onload = () => {
// new instance of tsUnit - pass in modules that contain test classes
var test = new tsUnit.Test(CalculationsTests);
// Handle the results yourself...
var result = test.run();
var outcome = (result.errors.length === 0) ? 'Test Passed' : 'Test Failed';
alert(JSON.stringify(outcome));
};
结果如下:
有人可以帮我找出我需要做些什么来正确设置单元测试吗?
答案 0 :(得分:1)
tsUnit有一些输出选项,您有基于浏览器的输出或TAP输出(这更适合命令行使用),或者您可以根据原始数据生成自己的输出。
要与Visual Studio集成,您需要将您的tsUnit测试包装在.NET测试中。没有编写Visual Studio扩展以允许tsUnit测试发现。您可以使用项目中的单个测试类来实现此目的,例如在C#项目中,您可以编写MSTest or NUnit test that calls the TypeScript tests。