【问题标题】:Iframe element not interactable in storybook UI using karate [duplicate]使用空手道的故事书 UI 中的 iframe 元素不可交互 [重复]
【发布时间】:2020-12-09 22:31:45
【问题描述】:

我正在尝试使用 karate dsl 版本 0.9.6 自动化 UI。以下是我正在尝试执行的步骤

* driver "https://next--storybookjs.netlify.app/official-storybook/?path=/story/addons-storyshots--block"
* waitFor('#storybook-preview-iframe').switchFrame()
* mouse().move('#root div.css-a32zs').go()
#* click('#root div.css-a32zs')
* delay(4000)
* screenshot()
* switchFrame(null)

我正在尝试执行鼠标悬停或单击 iframe 内的元素“#root div.css-a32zs”。但是空手道不与元素相互作用。我能够在 iframe 中收集任何文本或元素,但无法与它们交互。 我使用 selenium-java 尝试了上述场景,它正在与元素交互。

如果我做错了方式或上述解决方案,请提出建议。

更新空手道是很棒的工具,到目前为止能够测试 150 多个 UI 测试用例,而且还在增加。

【问题讨论】:

    标签: karate


    【解决方案1】:

    我发现这行得通:

    * mouse().move(400, 400).go()
    

    所以我认为发生的事情是位置相对于当前帧,但是左导航增加了几个像素。

    看看你是否能弄清楚 Selenium 是如何解决这个问题的,并建议或更好地贡献代码。

    编辑:我们将对空手道进行一些改进,以便您可以在下一个版本中执行此操作:

    * def frame = waitFor('#storybook-preview-iframe')
    * def offset = frame.script('_.getBoundingClientRect().left')
    * frame.switchFrame()
    * mouse('.css-a32zs').offset(offset, 0).go()
    

    【讨论】:

      猜你喜欢
      • 2019-09-30
      • 1970-01-01
      • 1970-01-01
      • 2019-08-20
      • 2020-09-08
      • 2021-10-20
      • 1970-01-01
      • 2018-04-02
      相关资源
      最近更新 更多