如何对单个测试需要localStorage的服务进行单元测试,而无需在Angular中进行模拟

时间:2017-03-05 08:54:16

标签: angular jasmine local-storage karma-runner

我们说我有一项使用html5 localStorage 的服务。作为一个全局对象,我可以在Angular中使用它,如下所示:

app.module中的

我声明了一个类型:

export declare let localStorage: any;

然后我可以在服务中导入它并使用它就好了。 现在,当我使用Jasmine和karma测试它时,未定义的 localStorage 。根据我的理解,业力将在Chrome的实例中进行午餐并在Chrome中运行测试,因此 localStorage 应该可用。

请注意,我可以将其包装在服务中并注入它,但我不想这样做。如果测试在浏览器中运行,那么我应该能够访问 localStorage 。我在这里缺少什么?

0 个答案:

没有答案