AngularJS测试之间的交叉污染

时间:2015-10-13 00:46:26

标签: angularjs jasmine karma-jasmine

我们在AngularJS应用程序中使用了一个配置文件。因为我们在构建阶段需要配置信息,所以我们将其定义为值。配置文件包含有关在何处查找多个评估之一的资产的信息,因此我们有一个configurationService,其中包含updateAssessment()函数,该函数在配置文件中查找已定义的各种评估,然后从特定评估中复制属性。另一个值,assessmentSettings。

在某些情况下,我们希望从XML文件中读取一些其他设置,但是当这些设置已作为该评估的配置的一部分提供时,我们希望忽略它们。我有一个测试,检查这是否完成,然后运行并通过。

但是,按摩项目配置值,然后在该测试中调用configurationService.updateAssessment(1)会导致41个其他测试在不同文件中失败。我的理解是Angular应该被拆除并为每次测试重新启动,并且当然不应该跨越不同的文件交叉污染。是否存在导致这种情况发生的价值观的不同之处?

请注意,项目本身似乎加载并运行正常。我还没有提供代码示例,因为这将是相当多的代码,我不认为这会有启发性。 Angular 1.3。

0 个答案:

没有答案