我可以将httpBackend mock传递给单元测试中的函数

时间:2015-09-21 18:41:48

标签: angularjs jasmine

以下一般存根工作:

https://gist.github.com/anonymous/154172bd7e034f3608e9

我的问题是这是否会产生意想不到的结果。有没有人不同意我这样做的方式?

我的目标是列出实现之上的测试,以便于阅读特定功能的规范:

it('should ...', func);
it('should ...', func);
it('should ...', func);

function func() {...};
function func() {...};
function func() {...};

谢谢。

3 个答案:

答案 0 :(得分:0)

我认为这是一个很好的模式,我个人在我的项目中遵循这种模式。我尝试始终将函数声明放在底部。正如您可能已经知道的那样,这只有在您按照自己的方式声明它们时才有效,并注意为变量分配函数。

// Good
doSomething();
function doSomething() {}

// Error
doSomething();
var doSomething = function() {}

John Papa同意 - https://github.com/johnpapa/angular-styleguide#style-y034

答案 1 :(得分:0)

不适用于测试

Jasmine定义清晰详细的DSL,你应该在it()内部看到执行测试,人们会首先看一下测试(实现)以了解你的项目(因为你的测试是实际规范,你的代码在做什么? )。

适用于API

在API中,您希望首先通过查看John Papa的样式指南中的顶部来看到公共成员(我猜你指的是它),这个,说清楚,并且容易从上到下。

答案 2 :(得分:0)

它不会产生意想不到的结果,这是一个很好的风格选择。