【发布时间】:2022-08-14 17:12:07
【问题描述】:
鉴于 Cypress 10.3.1 在 devDependencies 中有 Mocha 3.5.3。
我想为 mocha Context 添加新功能。
在cypress/support/e2e.ts 我做import \'./context\';。在cypress/support/context.ts 我有:
import { Context } from \'mocha\';
declare module \'mocha\' {
export interface Context {
sayHelloWorld();
}
}
Context.prototype.sayHelloWorld = function () {
cy.log(\'hello world\');
};
Visual Studio 允许我在 Context 上调用新函数(代码完成)。但是当尝试运行任何测试时,我得到:
Error: Can\'t walk dependency graph: Cannot find module \'mocha\' from \'C:\\…\\cypress\\support\\context.ts\'
这可能是捆绑程序问题吗?如果我删除 browserify 设置(我需要其他设置),我会得到一个不同的错误:
Error: Webpack Compilation Error
./cypress/support/context.ts
Module not found: Error: Can\'t resolve \'mocha\' in \'C:\\…\\cypress\\support\'
…
Field \'browser\' doesn\'t contain a valid alias configuration
我必须手动将 Mocha 安装到我自己的项目中吗?如果我这样做(yarn add -D mocha@3.5.3),我又会得到一个不同的错误:
Cannot read properties of undefined (reading \'prototype\')
知道如何正确执行此操作吗?
标签: typescript mocha.js cypress module-augmentation