使用clientWidth时AngularJS单元测试错误

时间:2014-08-12 12:55:03

标签: angularjs unit-testing jasmine karma-jasmine jqlite

在我的代码中有一行:

var contentWidth = angular.element(document.querySelector('.content'))[0].clientWidth;

运行应用程序时工作正常,但在单元测试时出现错误:

TypeError: 'undefined' is not an object (evaluating 'angular.element(document.querySelector('.content'))[0].clientWidth')

如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

在运行测试时附加DOM或模拟document.querySelector和angular.element,以防您不需要。

请记住在测试完成后删除angular元素上的mock / spy,因为它会干扰在内部使用它的jasmine框架。