【问题标题】:TestCafe Element is Visible but cannot be clickedTestCafe 元素可见但无法点击
【发布时间】:2018-11-30 01:34:16
【问题描述】:

我正在使用 Chromium 68 headless 在 Alpine docker 映像中运行 TestCafe 来测试 React 应用程序。我可以进行其他测试,但由于某种原因,我遇到了一个问题,即某个元素似乎可见但无法单击。

.expect(Selector('.ui.text.vertical.marketplace-side-nav.menu').find('a').withText('Pending').visible).ok()
.click(Selector('.ui.text.vertical.marketplace-side-nav.menu').find('a').withText('Pending'))

第一行通过,但第二行给出以下错误:

1) The element that matches the specified selector is not visible.

我尝试在 TestCafe Studio 上设置测试并尝试了多个选择器。我在开头设置了.resizeWindow(2000, 1000),以确保响应式用户体验没有问题。

编辑

Dockerfile 有一些其他的开发内容,但相当简单。

项目本身是专有的,所以我不能在这里分享代码。

【问题讨论】:

  • 您的测试场景看起来有效。您能否在您的项目中提供 Docker 映像或 Dockerfile,以便我们重现此问题?
  • 所以,这是调整大小的问题,我添加了代码来临时删除小屏幕上的导航隐藏,它起作用了。不幸的是,当我尝试在 headless 上使用 resizeWindow 时,我得到了 Cannot read property 'Emulation' of undefined,所以请调查一下。
  • 如果其他人被卡住的最终结果:旧版本的 Alpine Docker 映像正在安装 Chromium 57(我在其他地方安装了 v68 并运行构建以确认)。升级 Alpine 和 Chromium(现在 61+)修复了很多问题,现在模拟(进而调整大小)也可以正常工作。
  • @Fluidbyte,感谢您与大家分享您的发现。既然您已经找到了发生的事情,我建议您发表评论作为对您自己问题的回答,以便人们在遇到类似问题时参考它。

标签: automated-tests e2e-testing testcafe google-chrome-headless ui-testing


【解决方案1】:

根据作者的评论:

如果其他人被卡住,最终结果:旧版本的 Alpine Docker 映像正在安装 Chromium 57(我在其他地方安装了 v68 并运行构建以确认)。升级 Alpine 和 Chromium(现在 61+)修复了很多问题,现在模拟(进而调整大小)也可以正常工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-10-15
    • 2016-03-26
    • 1970-01-01
    • 2017-10-15
    • 2018-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多