首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Cypress V10中实现音乐元数据或音乐V10浏览器npm插件?

如何在Cypress V10中实现音乐元数据或音乐V10浏览器npm插件?
EN

Stack Overflow用户
提问于 2022-08-16 14:19:41
回答 1查看 77关注 0票数 1

我试图在Cypress版本10中实现Node插件,但我做不到。

https://www.npmjs.com/package/music-metadata-browser#fetchurl-function

完成

  1. 安装:npm install --save-dev music-metadata-browser

plugin/index.js中的

  1. 添加了以下几行

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中的

  1. 添加了以下代码

描述(‘解析文件’,() => {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后超时

有人能帮上忙吗?

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2022-08-17 02:06:03

您的项目是Cypress v9配置和Cypress v10测试的混合体。

我想你是在10+上,所以插件现在在cypress.config.js里。

代码语言:javascript
复制
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);
            });
          });
        },
      });

    },
  }
})
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73375552

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档