Cypress chrome 不在调试器语句处暂停

HMR*_*HMR 4 javascript cypress

我在测试中有以下代码:

it('shows correct language', () => {
  cy.visit('/product/my product');
  cy.changeLanguage('English');
  cy.get('[data-test=attribute-name]').should(
    (elements) => {
      console.log('this shows in console', elements);
      alert('But it wont break!!!!!!!!!!');//this alert shows
      debugger;//never breaks here
    },
  );
});
Run Code Online (Sandbox Code Playgroud)

启动 cypress./node_modules/.bin/cypress open然后我在 cypress 窗口中运行测试,该窗口打开 chrome,然后我手动打开开发工具(不知道如何告诉 cypress 在打开 devtools 的情况下打开 chrome)。

它在控制台中显示消息并显示警报,但实际上从未中断。在sources选项卡中,未设置“停用断点”,因此断点处于活动状态。

手动设置断点然后单击“运行所有测试”按钮后,第一次运行会在手动设置的断点处暂停但忽略该debugger语句。

Jor*_*wal 5

我想我已经成功解决了您遇到的问题

与其使用debugger,不如使用cy.debug()。但为了让它工作,您需要在运行测试时打开调试器/控制台。

查看此页面了解更多信息:https ://docs.cypress.io/api/commands/debug.html