gpt4 book ai didi

reactjs - 使用 Jest 和 Enzyme 测试 Dash JS

转载 作者:行者123 更新时间:2023-11-28 19:49:59 24 4
gpt4 key购买 nike

我正在尝试为包含 DashJS 的 React 组件编写 Jest 测试媒体播放器。我正在使用 Enzyme 的 mount 方法尝试测试该组件,但 DashJS 媒体播放器似乎无法正确安装。

在我的 componentDidMount 方法中,我有以下代码:

    this.videoManager = dashjs.MediaPlayer().create();
this.videoManager.initialize(this.videoPlayer, videoUrl, true);
// Where this.videoPlayer is a reference to an HTML <video> element
this.videoManager.preload();

最后一行 (this.videoManager.preload();) 产生以下错误:

You must first call attachSource() with a valid source before calling this method thrown

当我运行该组件时,它正常工作 - 这只是我遇到问题的测试。我无法在线找到任何相关问题/解决方案。

我正在使用每个相关包的以下版本:

  • react :“16.2.0”
  • dashjs: "2.6.7"
  • 开 Jest :“22.3.0”
  • enzyme :“3.3.0”
  • enzyme-adapter-react-16: "1.1.1"

任何帮助将不胜感激!

最佳答案

该错误表明 videoUrl 存在一些问题,导致 initialize 中传递的值未被设置。当 preload 检查是否设置了有效源时,将抛出错误。

猜测一下,videoUrl 在你的测试中是不是一个空字符串,但是当组件正常使用时,它的长度是非零的?

关于reactjs - 使用 Jest 和 Enzyme 测试 Dash JS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49557269/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com