错误:在运行排毒测试时找不到模块“mocha/lib/cli/run-option-metadata”

Posted

技术标签:

【中文标题】错误:在运行排毒测试时找不到模块“mocha/lib/cli/run-option-metadata”【英文标题】:Error: Cannot find module 'mocha/lib/cli/run-option-metadata' on running detox test 【发布时间】:2021-06-17 00:54:53 【问题描述】:

运行npx detox test --configuration android.emu.release 在排毒时给出这些错误。

detox[44685] ERROR: [cli.js] Require stack:
detox[44685] ERROR: [cli.js] - /Users/sumukhahegde/Code/OpenSource/e2eTest/node_modules/detox/local-cli/utils/splitArgv.js
detox[44685] ERROR: [cli.js] - /Users/sumukhahegde/Code/OpenSource/e2eTest/node_modules/detox/local-cli/test.js
detox[44685] ERROR: [cli.js] - /Users/sumukhahegde/Code/OpenSource/e2eTest/node_modules/detox/node_modules/yargs/index.cjs
detox[44685] ERROR: [cli.js] - /Users/sumukhahegde/Code/OpenSource/e2eTest/node_modules/detox/local-cli/cli.js ```

【问题讨论】:

【参考方案1】:

目前,Detox 的默认测试运行程序是 mocha。

因此,如果您希望使用 mocha,您需要将其作为依赖项包含在您的项目中,并更新 detox configuration file,如下面的 sn-p 所示,以包含通向您的 mocha 配置的路径。

但是,如果您确实希望使用 Jest(推荐的测试运行器),则需要在“runnerConfig”旁边定义一个“testConfig”值。

下面的 sn-p 给出了你的根 detox 配置文件应该是什么样子的想法


  "testRunner": "jest",  // Specify the test runner if using Jest, or it defaults to mocha
  "runnerConfig": "e2e/config.json", // specify the path to your runner's configuration
  "devices": 
    "emulator": 
      "type": "android.emulator",
      "device": 
        "avdName": "5.4_FWVGA_API_30"
      
    
  ,
... //more configurations

【讨论】:

以上是关于错误:在运行排毒测试时找不到模块“mocha/lib/cli/run-option-metadata”的主要内容,如果未能解决你的问题,请参考以下文章

测试套件无法运行在 vue3 中使用 jest 时找不到模块'vue-template-compiler

错误:使用节点命令运行 JS 文件时找不到模块“firebase”

UnhandledPromiseRejectionWarning:错误:当我尝试运行我的代码时找不到模块'../database/db'

运行不和谐机器人时找不到模块“节点:事件”错误

面临错误:在运行 Node Js 服务器时找不到模块“C:\Users\DELL\Desktop\node js 程序\文件”

运行 gulp app:serve rails 时找不到模块“require-dir”错误