我试图在Cypress版本10中实现Node插件,但我做不到。
https://www.npmjs.com/package/music-metadata-browser#fetchurl-function
完成
npm install --save-dev music-metadata-browser plugin/index.js中的
const musicMetadata =require(‘音乐-元数据-browser’);const util = require('util');module.exports = (on,config) => {require(@cypress/code-coverage/Task‘)(on,config);on(’validateAudioFormat‘,{ validateAudioFormat(audioTrackUrl) ){返回新承诺((解决,拒绝) => {musicMetadata.parseFile,(错误,数据) => { if (错误){返回拒绝(err );}返回解析(数据);});};
e2e/validateFile.cy.js中的
描述(‘解析文件’,() => {it(‘验证音频文件’,() => { const audioURL =‘cypress/audioURL/media/Patrikios.mp3’;console.log('url:‘+ audioURL);cy.task('validateAudioFormat',audioURL).then(data => { const allData = Object.values(data);console.log('All data:’+ allData);});/****** cy.on('validateAudioFormat',(url) => {异步() => { const元数据=等待mm.fetchFromUrl(url);console.log('url:‘+ url);console.log(元数据,{ showHidden: false,深度: null });};};*};};
错误:
CypressError:
cy.task('validateAudioFormat')失败,但有以下错误:在setupNodeEvents方法中没有处理任务'validateAudioFormat‘。在您的resetCoverage方法中注册了以下任务: combineCoverage、coverageReport、setupNodeEvents --在这里: /opt/lampp/htdocs/project/cypress.config.js
注释块错误:
cypress/fixtures/media/audios/valid/Beyond_Patrick_Patrikios.mp3 CypressError cy.task('readAudioFiles')在等待600 out后超时
有人能帮上忙吗?
谢谢!
发布于 2022-08-17 02:06:03
您的项目是Cypress v9配置和Cypress v10测试的混合体。
我想你是在10+上,所以插件现在在cypress.config.js里。
const { defineConfig } = require('cypress')
const musicMetadata = require('music-metadata-browser');
const util = require('util');
module.exports = defineConfig({
e2e: {
setupNodeEvents(on, config) {
require('@cypress/code-coverage/task')(on, config);
on('task', {
validateAudioFormat(audioTrackUrl) {
return new Promise((resolve, reject) => {
musicMetadata.parseFile(audioTrackUrl, (err, data) => {
if (err) {
return reject(err);
}
return resolve(data);
});
});
},
});
},
}
})https://stackoverflow.com/questions/73375552
复制相似问题