要解决这个问题,你需要检查为什么 wrapper.vm.redirectUrl 的值为空。

可能的原因包括:

  1. 组件的 redirectUrl 属性没有正确设置或初始化。
  2. 在设置属性之前,组件的 redirectUrl 属性被其他代码修改。
  3. 测试中的 await wrapper.setProps({ redirectUrl: '2222' }) 操作没有成功。

你可以按照以下步骤来解决问题:

  1. 确保在测试之前,redirectUrl 属性被正确设置或初始化。
  2. 检查测试代码中是否有其他地方修改了 redirectUrl 属性。
  3. 确保 await wrapper.setProps({ redirectUrl: '2222' }) 操作成功执行。

如果问题仍然存在,可以尝试在测试代码中添加一些调试输出,以查看 redirectUrl 属性的值和执行流程:

it('覆盖组件state', async () => {
  console.log(wrapper.vm.redirectUrl); // 输出当前 redirectUrl 的值
  await wrapper.setProps({ redirectUrl: '2222' });
  console.log(wrapper.vm.redirectUrl); // 输出修改后的 redirectUrl 的值
  expect(wrapper.vm.redirectUrl).toBe('2222');
});

通过查看输出,你可以确定属性的值何时被修改,以及修改后的值是否正确

jest vue单测 expectreceivedtoBeexpected Objectis equality Expected 2222 Received 37 it覆盖组件state async = 38 await wrappersetProps redirectUrl 2222 ; 39 expectwrapp

原文地址: https://www.cveoy.top/t/topic/h91n 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录