茉莉花测试 angular.element(document).ready

jasmine test angular.element(document).ready

我有关于如何测试 element(document).ready() 中的代码的问题,在调试期间,它似乎会先到达 document.ready 然后进行测试和然后进入document.ready。我什至尝试在 afterEach 中进行测试,发现 document.ready 中的代码甚至发生在 afterEach 之后。做这种测试有什么好的方法吗?

我还在 jasmine 测试中添加了 document.ready。

describe('test',function(){
    beforeEach(....)
    it('test',function(){
        angular.element(document).ready(function(){
            expect(test).toBe(true);
        })
    })
})

在调试模式下,它会进入内部。但是当测试运行时,它没有起作用。

首先,我认为您不应该使用 document.ready,因为默认情况下所有 angular 代码都将在文档准备就绪时执行。

其次,要测试这种功能,您应该将该功能作为服务,然后测试该服务,并在回调中调用该服务。