Javascript 未触发TestCafe滚动事件

Javascript 未触发TestCafe滚动事件,javascript,vue.js,testing,automated-tests,testcafe,Javascript,Vue.js,Testing,Automated Tests,Testcafe,我正在尝试编写一个功能测试,以验证链接是否存在于元素数组中,以及链接是否成功打开 我被困在测试的前几个步骤中 “testcafe”:“^0.22.0” 节点v8.11.2 在铬合金中运行 我正在使用客户端函数处理测试期间的滚动: import { Selector, ClientFunction } from 'testcafe'; const scrollTo = ClientFunction(top => { window.scrollTo(0, top); wi

我正在尝试编写一个功能测试,以验证链接是否存在于元素数组中,以及链接是否成功打开

我被困在测试的前几个步骤中

“testcafe”:“^0.22.0” 节点v8.11.2 在铬合金中运行

我正在使用客户端函数处理测试期间的滚动:

import { Selector, ClientFunction } from 'testcafe';

const scrollTo = ClientFunction(top => {
     window.scrollTo(0, top);
     window.dispatchEvent(new Event('scroll'))
});

fixture(`Given user is in fund story chapter 4 for symbol GOBAX`)
     .page(`http://localhost:8080/#/fund-story/gobax/5`);

test(`User verifies that the ESG report link in the tooltip of each Top Holdings ESG Scores datapoint, opens successfully`, async testController => {
     const section = Selector('#section-esg-top-holdings');
     const top = await section.offsetTop;
     await scrollTo(top);
     await testController.wait(3000);
})
页面上确实存在“节”,并且客户端函数确实成功滚动到元素。我甚至试图强制分派事件,但组件中的回调没有被触发。 窗口滚动事件组件中的回调会在执行一些计算以验证节是否在视图中后触发更多元素在页面上呈现

如果我使用window.scrollTo(0,顶部);在chrome dev工具中,当top=y位置时,会触发事件并渲染其他元素


这是一个testCafe bug还是我在测试中遗漏了一些可以成功触发事件的东西?

我认为testCafe可能会错误地模拟页面的滚动事件。由于@AlexKamaev没有重现该问题,请创建一个新页面,并提供一个可用于重现该问题的页面

如果没有一个有效的项目,很难确定问题的原因。我根据您的测试准备了一个示例项目,它演示了
window.scroll
方法正确地引发事件。请查看以下链接哦,这很不幸><非常感谢您花时间澄清这一点。当我进一步确定问题时,我会回来发布解决方案knowledge@JordanKlaers,您是否已设法确定问题并找到解决方案?否,滚动功能正常,但回拨没有使用数据更新。它与vue道具有关。