我正在尝试使用Karma Scenario Test Runner设置一些AngularJS e2e测试。我对源文件做了一些修改,但是Karma在测试时似乎没有使用这些最新版本。
在源文件中,我向一些元素添加了id。 Karma仍然无法找到它们,所以我在e2e测试中添加了一个暂停,以便我可以在测试运行器的当前页面上标记和“检查元素”(使用Chrome)。源代码似乎是正确的,除了最新的更改缺失,即,ID不存在。那么这里发生了什么?我是否需要明确告诉Karma文件已经以某种方式更新过?
答案 0 :(得分:2)
您可以通过强制angularjs清除应用程序缓存来解决此问题:
app.run(function($rootScope, $templateCache) {
$rootScope.$on('$viewContentLoaded', function() {
$templateCache.removeAll();
});
});
答案 1 :(得分:1)
在Chrome开发者工具设置中,选中“禁用缓存(当DevTools处于打开状态时)”。
显然,这是一个比Angular的e2e测试跑者更普遍的问题,但我现在决定将它留在这里,以防其他人有同样的问题。