如何断言 angular 中是否存在元素?

How to assert if an element exists in angular?

我正在为指令编写规范。作为测试的一部分,我需要断言我的根指令组件中是否存在带有 class 的元素。

我尝试了以下方法。

it('should have a loading div container', function() {
            var loadingDivContainer = element.find('.loading-div');
            expect(loadingDivContainer).to.exist;
        });

但这似乎是通过了所有条件。我正在使用以下技术。

Angular 1.x, 摩卡, 柴,

loadingDivContainer 如果未找到结果,则为空数组;如果找到结果,则为长度数组。所以检查长度:

expect(loadingDivContainer.length).to.be(1);

expect(loadingDivContainer.length).not.to.be(0);

我们找到了答案。

var loadingDivContainer = element[0].querySelectorAll('.loading-div');
expect(loadingDivContainer.length).to.be(1);