【发布时间】:2016-01-28 15:50:11
【问题描述】:
我正在测试使用 ServiceB 的 ServiceA。 ServiceB 有一个名为 getData() 的方法,它有时返回 true,有时返回 false。服务 A 具有不同的逻辑,具体取决于 ServiceB 返回 true 还是 false,我需要测试这两种情况。目前,我正在像这样嘲笑 Service B:
beforeEach(angular.mock.module('app', function ($provide) {
serviceB = {
getData: function () {
return true;
}
};
$provide.value('serviceB', serviceB);
}));
那么我如何测试 serviceB 返回 true 时会发生什么,然后进行另一个测试以验证它返回 false 时的行为?我可以在 it() 方法中而不是在 beforeEach() 中创建模拟,以便让模拟在不同的测试方法中返回不同的值吗?
【问题讨论】: