Using Cypress, getting "warn mocha-intellij: cannot load "./lib/utils". Caused by Error: Cannot find module 'mocha'"

Using Cypress, getting "warn mocha-intellij: cannot load "./lib/utils". Caused by Error: Cannot find module 'mocha'"

想知道是否有人看到过此错误或类似错误?

使用:

我正在使用 Cypress 创建一些测试。一些测试涉及 tables,确保 tables 可以按不同的列正确排序(升序和降序)。我使用 Cypress-Harvester 来“抓取”table 并断言排序是正确的。

某些列检查工作正常。但是由于某种原因,检查其他列会引发错误,从而结束测试。这是 Cypress/Cypress-Harvester 代码的一个例子,它工作得很好:

                //Sorting by Task asc
                cy.task('log', '  Testing sorted by TASK # ascending...')
                cy.getByID('taskIdHeader').click()

                cy.get('#dataTable')
                    .should('have.length.above', 0)
                    .scrapeTable()
                    .then((table) => {
                            expect(table.columnLabels).to.deep.eq([
                                'Task ↓',
                                'Name',
                                'Date Received',
                                'Type',
                                'Group'])

                            expect(table.isPropertySorted(['task'], ['asc'])).to.be.true
                        }
                    )

这是断言失败的 Cypress/Cypress-Harvester 代码示例:

                //Sorting by NAME asc
                cy.task('log', '  Testing sorted by NAME ascending...')
                cy.getByID('unitNameNumberHeader').click()

                cy.get('#dataTable')
                    .should('have.length.above', 0)
                    .scrapeTable()
                    .then((table) => {
                            expect(table.columnLabels).to.deep.eq([
                                'Task #',
                                'Name ↓',
                                'Date Received',
                                'Type',
                                'Group'])

                            expect(table.isPropertySorted(['name'], ['asc'])).to.be.true
                        }
                    )

这是错误:

warn mocha-intellij: cannot load "./lib/utils". Caused by  Error: Cannot find module 'mocha'

Require stack:
C:\dev\TestApp\node_modules\cypress-intellij-reporter\lib\cypressIntellijUtil.js
C:\dev\TestApp\node_modules\cypress-intellij-reporter\lib\cypressIntellijTree.js
C:\dev\TestApp\node_modules\cypress-intellij-reporter\index.js
C:\Users\kodriscoll\AppData\Local\Cypress\Cache.3.0\Cypress\resources\app\packages\server\lib\reporter.js
C:\Users\kodriscoll\AppData\Local\Cypress\Cache.3.0\Cypress\resources\app\packages\server\lib\project-base.js
C:\Users\kodriscoll\AppData\Local\Cypress\Cache.3.0\Cypress\resources\app\packages\server\lib\project_static.js
C:\Users\kodriscoll\AppData\Local\Cypress\Cache.3.0\Cypress\resources\app\packages\server\lib\modes\run.js
C:\Users\kodriscoll\AppData\Local\Cypress\Cache.3.0\Cypress\resources\app\packages\server\lib\modes\run-e2e.js
C:\Users\kodriscoll\AppData\Local\Cypress\Cache.3.0\Cypress\resources\app\packages\server\lib\modes\index.js
C:\Users\kodriscoll\AppData\Local\Cypress\Cache.3.0\Cypress\resources\app\packages\server\lib\cypress.js
C:\Users\kodriscoll\AppData\Local\Cypress\Cache.3.0\Cypress\resources\app\packages\server\index.js
C:\Users\kodriscoll\AppData\Local\Cypress\Cache.3.0\Cypress\resources\app\index.js
    at Module._resolveFilename (internal/modules/cjs/loader.js:887:15)
    at Function.n._resolveFilename (electron/js2c/browser_init.js:257:1128)
    at Function.resolve (internal/modules/cjs/helpers.js:94:19)
    at findMochaInnerDependency (C:\dev\TestApp\node_modules\cypress-intellij-reporter\lib\cypressIntellijUtil.js:213:35)
    at requireMochaModule (C:\dev\TestApp\node_modules\cypress-intellij-reporter\lib\cypressIntellijUtil.js:184:29)
    at Object.requireMochaUtils (C:\dev\TestApp\node_modules\cypress-intellij-reporter\lib\cypressIntellijUtil.js:278:24)
    at Object.stringify (C:\dev\TestApp\node_modules\cypress-intellij-reporter\lib\cypress-intellij-stringifier.js:10:29)
    at finishTestNode (C:\dev\TestApp\node_modules\cypress-intellij-reporter\index.js:211:35)
    at Runner.<anonymous> (C:\dev\TestApp\node_modules\cypress-intellij-reporter\index.js:383:7)
    at Runner.<anonymous> (C:\dev\TestApp\node_modules\cypress-intellij-reporter\lib\cypressIntellijUtil.js:129:17)
    at Runner.emit (events.js:327:22)
    at Reporter.emit (C:\Users\kodriscoll\AppData\Local\Cypress\Cache.3.0\Cypress\resources\app\packages\server\lib\reporter.js:333:46)
    at ProjectBase.<anonymous> (C:\Users\kodriscoll\AppData\Local\Cypress\Cache.3.0\Cypress\resources\app\packages\server\lib\project-base.js:449:34)
    at Generator.next (<anonymous>:null:null)
    at C:\Users\kodriscoll\AppData\Local\Cypress\Cache.3.0\Cypress\resources\app\packages\server\node_modules\tslib\tslib.js:117:75
    at new Promise (<anonymous>:null:null)
    at Object.__awaiter (C:\Users\kodriscoll\AppData\Local\Cypress\Cache.3.0\Cypress\resources\app\packages\server\node_modules\tslib\tslib.js:113:16)
    at Object.onMocha (C:\Users\kodriscoll\AppData\Local\Cypress\Cache.3.0\Cypress\resources\app\packages\server\lib\project-base.js:442:51)
    at Socket.<anonymous> (C:\Users\kodriscoll\AppData\Local\Cypress\Cache.3.0\Cypress\resources\app\packages\server\lib\socket-base.js:213:40)
    at Socket.emit (events.js:315:20)
    at Socket.emitUntyped (C:\Users\kodriscoll\AppData\Local\Cypress\Cache.3.0\Cypress\resources\app\packages\socket\node_modules\socket.io\dist\typed-events.js:69:22)
    at C:\Users\kodriscoll\AppData\Local\Cypress\Cache.3.0\Cypress\resources\app\packages\socket\node_modules\socket.io\dist\socket.js:428:39
    at processTicksAndRejections (internal/process/task_queues.js:75:11)
 {
  code: 'MODULE_NOT_FOUND',
  requireStack: [
    'C:\dev\TestApp\node_modules\cypress-intellij-reporter\lib\cypressIntellijUtil.js',
    'C:\dev\TestApp\node_modules\cypress-intellij-reporter\lib\cypressIntellijTree.js',
    'C:\dev\TestApp\node_modules\cypress-intellij-reporter\index.js',
    'C:\Users\kodriscoll\AppData\Local\Cypress\Cache\8.3.0\Cypress\resources\app\packages\server\lib\reporter.js',
    'C:\Users\kodriscoll\AppData\Local\Cypress\Cache\8.3.0\Cypress\resources\app\packages\server\lib\project-base.js',
    'C:\Users\kodriscoll\AppData\Local\Cypress\Cache\8.3.0\Cypress\resources\app\packages\server\lib\project_static.js',
    'C:\Users\kodriscoll\AppData\Local\Cypress\Cache\8.3.0\Cypress\resources\app\packages\server\lib\modes\run.js',
    'C:\Users\kodriscoll\AppData\Local\Cypress\Cache\8.3.0\Cypress\resources\app\packages\server\lib\modes\run-e2e.js',
    'C:\Users\kodriscoll\AppData\Local\Cypress\Cache\8.3.0\Cypress\resources\app\packages\server\lib\modes\index.js',
    'C:\Users\kodriscoll\AppData\Local\Cypress\Cache\8.3.0\Cypress\resources\app\packages\server\lib\cypress.js',
    'C:\Users\kodriscoll\AppData\Local\Cypress\Cache\8.3.0\Cypress\resources\app\packages\server\index.js',
    'C:\Users\kodriscoll\AppData\Local\Cypress\Cache\8.3.0\Cypress\resources\app\index.js',
    undefined
  ]
}

AssertionError: expected false to be true
Expected :"true"
Actual   :false

谢谢!

使用 Cypress GUI Test Runner 的测试也失败了,但没有提到 mocha 文件:

Error as shown the Cypress GUI Test Runner

如果我退出 IntelliJ 并从 Windows CMD 行 运行 它,测试也会失败。同样,没有抛出详细错误:

Error as shown at a Windows CMD line

当 运行在 IntelliJ 中进行上述测试时,cypress-intellij-reporter 在测试失败时生成上述错误消息,这阻止了真正的测试失败错误的出现。当我退出 IntelliJ 并 运行 在 Windows CMD 行进行上述测试时,它从等式中删除了 cypress-intellij-reporter。测试仍然失败,但由于测试代码中的其他原因。我针对 cypress-intellij-reporter 打开了以下问题:

https://github.com/mbolotov/cypress-intellij-reporter/issues/3