赛普拉斯不会在Angular应用中触发更改检测

时间:2018-08-08 10:18:17

标签: angular cypress angular-changedetection

我正在尝试在Angular应用程序中测试拖动指示器(使用css类的可拖放边框附近)。我的拖动使用startdrag,dragover和drop事件。我开始拖动的代码是:

cy.get('vm-dock')
    .eq(dock)
    .find('.drag-handle')
    .eq(panel)
    .trigger('dragstart');

我将鼠标悬停在可放置对象上方的代码是:

cy.clock();
cy.get('vm-dock')
    .eq(dock)
    .trigger('dragenter')
    .trigger('dragover');
cy.tick(100);

现在,当这最后一段代码运行时,我仍然看不到拖动指示器,但是只要将鼠标悬停在网页上的任何位置,它就会弹出。我认为这与Angular不进行任何更改检测有关,并且由于我的拖动指示器依靠其更改检测,因此不会显示。有没有办法从赛普拉斯内部强制Angular的变化检测循环?只是等待更长的时间是行不通的。

cypress-angular-nochangedetection

0 个答案:

没有答案