首页 > 解决方案 > 错误:在运行排毒测试时找不到模块“mocha/lib/cli/run-option-metadata”

问题描述

运行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 ```

标签: react-nativereact-native-androide2e-testingdetoxe2e

解决方案


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

因此,如果您希望使用 mocha,您需要将它作为依赖项包含在您的项目中,并更新detox 配置文件,如下面的片段所示,以包含通向您的 mocha 配置的路径。

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

下面的代码片段让您了解您的根排毒配置文件应该是什么样子

{
  "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
}

推荐阅读