我试图在After hook中获取测试结果(每个场景)[参考https://stackoverflow.com/questions/66153949/get-test-status-after-each-test-in-cypress]
Cypress.mocha.getRunner().suite.ctx.currentTest.state
我收到错误“Property 'mocha' does not exist on type Cypress & CyEventEmitter”
我使用Cypress,Typescript和Cucumber,但是因为mocha是默认的,所以cypress.mocha应该可以在hook之后工作
任何想法在如何解决这个问题?
tsconfig.json文件
{
"compilerOptions": {
"target": "es2016",
"lib": ["es6"],
"module": "commonjs",
"types": ["cypress","cypress-xpath","node"],
"resolveJsonModule": true,
"esModuleInterop": true,
"strict": true,
"forceConsistentCasingInFileNames": true,
"skipLibCheck": true
}
}
我是否需要更改tsconfig.json文件中的任何内容?
更新:我可以解决这个错误(TypeScript属性'mocha'不存在于类型Cypress & CyEventEmitter)通过使用[参考链接https://github.com/cypress-io/cypress/issues/2972#issuecomment-671779458](Cypress作为任何).mocha.getRunner(). suite...
但我现在面临无法读取未定义的属性(阅读'状态')对此有任何帮助吗?
2条答案
按热度按时间3htmauhk1#
该代码似乎已过期。
我使用
cy.state('test')
,这里有一个例子实际上,你原来的工作似乎太,你只需要添加摩卡类型的项目
tsconfig.json
vbkedwbf2#
您可以使用为自定义命令添加类型定义的相同方法添加缺少的类型定义(请参见Typescript Support页面)。
在项目根目录中创建类型定义文件
cypress.d.ts
。在
tsconfig.json
中添加对它的引用