You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Heroku执行New Test Run时遭遇no test specified错误求助

Heroku执行New Test Run时出现「no test specified」错误排查

问题描述

在Heroku中执行New Test Run操作时,触发了「no test specified」错误。代码仓库已关联Heroku,且已在Procfile中指定运行命令,原本期望测试能通过Procfile正常运行,附上项目的package.json配置文件,请求协助排查解决。

项目package.json配置

{
  "name": "testing",
  "version": "1.0.0",
  "description": "test",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "wdio": "wdio run ./wdio.conf.js",
    "start": "npm start"
  },
  "author": "****",
  "license": "ISC",
  "devDependencies": {
    "@wdio/local-runner": "^7.25.4",
    "@wdio/spec-reporter": "^8.11.2",
    "chromedriver": "^114.0.2",
    "wdio-chromedriver-service": "^8.1.1",
    "wdio-cucumberjs-json-reporter": "^4.4.3"
  },
  "dependencies": {
    "@wdio/cli": "^7.25.4",
    "@wdio/cucumber-framework": "^7.25.4",
    "cucumber-html-reporter": "^7.1.0",
    "fs-extra": "^11.1.1",
    "properties-parser": "^0.6.0"
  }
}

错误截图

Heroku测试错误截图


解决方案

问题根源

Heroku默认执行npm test命令运行测试,你的package.json中test脚本就是输出「no test specified」并报错,这是错误的直接原因。另外Procfile仅用于定义应用的web/worker进程启动命令,不会被Heroku的测试流程调用,所以通过Procfile指定测试命令的方式无效。

修复方法

方法1:修改package.json的test脚本(推荐)

直接把test脚本替换为实际测试命令,让Heroku默认测试流程能正确执行你的测试:

"scripts": {
  "test": "wdio run ./wdio.conf.js",
  "wdio": "wdio run ./wdio.conf.js",
  "start": "node index.js" // 注意:原start脚本是递归调用npm start会导致启动失败,建议改为实际启动命令,比如node index.js
}

方法2:自定义Heroku测试命令

如果不想修改package.json的test脚本,可通过Heroku配置变量指定自定义测试命令:

  1. 登录Heroku控制台,进入你的应用
  2. 进入「Settings」→「Config Vars」
  3. 添加新配置变量:
    • 键:HEROKU_TEST_RUN_COMMAND
    • 值:npm run wdio
  4. 保存后,Heroku会用该命令替代默认的npm test执行测试

额外注意事项

  • 确保wdio.conf.js配置了无头浏览器模式(比如Chrome的--headless=new参数),Heroku环境无图形界面,非无头模式会运行失败
  • 检查Heroku依赖安装配置:若设置了NPM_CONFIG_PRODUCTION=true,devDependencies不会被安装,需调整配置或把测试相关依赖移到dependencies中,或设置NPM_CONFIG_PRODUCTION=false

内容的提问来源于stack exchange,提问作者Siddharth Mittal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 15:05:55