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

Cucumber安装异常求助:解决调用未运行实例错误

修复Cucumber安装冲突错误的方案

核心问题分析

你遇到的错误根源是项目中同时存在两个独立的Cucumber包实例:

  • 手动安装的旧版cucumber@6.0.7
  • WDIO Cucumber框架(@wdio/cucumber-framework@8.29.1)依赖的新版@cucumber/cucumber@9.5.1

步骤定义文件加载了未被WDIO初始化的旧版Cucumber实例,因此触发"You're calling functions on an instance of Cucumber that isn't running"错误。

具体修复步骤

1. 移除冲突的旧版Cucumber包

执行命令删除项目中手动安装的旧版cucumber:

npm uninstall cucumber --save-dev

2. 清理依赖并重新安装

  • 删除项目根目录下的node_modules文件夹
  • 删除package-lock.json文件
  • 重新安装所有依赖:
npm install

3. 修正步骤定义的导入语句

检查所有步骤定义文件(比如service-steps.js),确保导入的是WDIO框架提供的Cucumber API:

// 正确写法
const { Given, When, Then } = require('@wdio/cucumber-framework')

// 错误写法(必须替换掉)
// const { Given, When, Then } = require('cucumber')

4. 移除全局安装的Cucumber(如果有)

执行命令检查并删除全局的Cucumber包:

# 查看全局已安装包
npm list -g --depth=0

# 若存在则删除
npm uninstall -g cucumber

验证修复

重新运行测试命令:

npm run test

内容的提问来源于stack exchange,提问作者Mr. E

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 08:10:32