我刚刚安装了Chutzpah来运行基于Jasmine的Javascript单元测试。我对茉莉花以及辣妹和角质都很陌生。我为一个角度过滤器创建了一个测试文件。该测试文件名为filters.spec.js,并包含以下代码
/// <reference path="c:\users\octaviane.cvuintelligence\documents\visual studio 2013\Projects\PersonalTrainer\PersonalTrainer\Scripts/jasmine.js" />
/// <reference path="c:\users\octaviane.cvuintelligence\documents\visual studio 2013\Projects\PersonalTrainer\PersonalTrainer\Scripts/angular.js" />
/// <reference path="../app.js" />
describe("Filters", function () {
beforeEach(function () { module('7minWorkout') });
describe("secondsToTime filter", function () {
it('should convert integer to time format',
inject(function ($filter) {
expect($filter("secondsToTime")(5)).toBe("00:00:05");
expect($filter("secondsToTime")(65)).toBe("00:01:05");
expect($filter("secondsToTime")(3610))
.toBe("01:00:10");
}));
});
});如您所见,我引用了创建7minWorkout模块的angular.js、jasmine.js和js文件。我是新来的,所以请不要生我的气。在运行这个测试文件时(右键单击Visual测试中的文件内容),我得到以下错误:找不到变量:模块和找不到变量: inject。请帮帮我。谢谢。
发布于 2016-01-04 12:19:40
因此,我最终通过在我的单元测试文件中添加一个引用来使其工作,并将其引用到角-mocks.js和定义了我正在测试的代码的实际JS文件(filters.js)。
对于所有找到这篇文章的新手,要想让visual studio的Chutzpah实际为jasmine运行UnitTests,您需要在单元测试文件中引用以下文件:
希望这能帮助别人:)
发布于 2016-01-04 11:53:41
您需要使用茉莉花类型(d.ts)才能在类型记录中编写测试。现在,您只在普通的js中引用茉莉,所以模块是一个未知的关键字。
https://stackoverflow.com/questions/34590008
复制相似问题