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

GitHub Action Vitest CI流水线报错:缺少uses/run键求助

Vue3 + Vitest项目GitHub Action CI配置报错修复

问题描述

我给基于Vue3开发的前端项目搭建GitHub Action CI流水线,用Vitest执行测试,前端代码存放在根目录的WEB文件夹中。希望主分支每次提交时自动运行测试,但遇到如下报错:

Error: .github#L1
each step must define a uses or run key

我的.yml配置文件基于Node.js模板修改,仅添加了working-directory指定WEB文件夹,内容如下:

name: Runs frontend tests

on:
  push:
    branches: [main]
  pull_request:
    branches: [main]

jobs:
  build:
    runs-on: ubuntu-latest

    strategy:
      matrix:
        node-version: [16.x]

    steps:
      - uses: actions/checkout@v3
      - name: Use Node.js ${{ matrix.node-version }}
        working-directory: ./WEB
        uses: actions/setup-node@v3
        with:
          node-version: ${{ matrix.node-version }}
          cache: 'npm'
      - name: Execute Unit tests
      - run: npm ci
      - run: npm run test

错误原因

  1. 无效步骤触发报错:配置里的- name: Execute Unit tests仅定义了步骤名称,没有对应的uses(调用现成Action)或run(执行命令)字段,GitHub Action要求每个步骤必须二选一,这是直接报错的原因。
  2. 工作目录未正确配置:后续的npm ci和npm run test未指定working-directory,会默认在仓库根目录执行,但前端代码在WEB文件夹,根目录没有package.json,就算修复第一个错误,也会出现找不到依赖的问题。

修复后的完整配置

name: Runs frontend tests

on:
  push:
    branches: [main]
  pull_request:
    branches: [main]

jobs:
  build:
    runs-on: ubuntu-latest

    strategy:
      matrix:
        node-version: [16.x]

    steps:
      - uses: actions/checkout@v3
      - name: Use Node.js ${{ matrix.node-version }}
        uses: actions/setup-node@v3
        with:
          node-version: ${{ matrix.node-version }}
          cache: 'npm'
          cache-dependency-path: './WEB/package-lock.json' # 针对WEB目录的依赖缓存
      - name: Execute Unit tests
        working-directory: ./WEB
        run: |
          npm ci
          npm run test

关键修改点

  • 合并单独的Execute Unit tests步骤与后续命令,用run: |执行多行命令,确保每个步骤都有合法的run字段。
  • 给测试步骤添加working-directory: ./WEB,让npm命令在前端代码目录执行。
  • 给setup-node步骤添加cache-dependency-path,指定WEB目录下的package-lock.json,保证npm依赖缓存能正确命中,加快流水线运行速度。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 05:20:48