【问题标题】:Click overlay marker in Google Maps with capybara-webkit使用 capybara-webkit 在 Google Maps 中单击覆盖标记
【发布时间】:2013-02-23 05:48:48
【问题描述】:

有没有办法用 capybara-webkit 点击 Google Maps 覆盖? Capybara 使用 Selenium 怎么样?选择标记后,我想测试信息窗口的内容。我还想测试页面上有 n 个标记。

【问题讨论】:

  • 我也在找方法,你找到解决办法了吗?
  • 不,很遗憾没有。我一无所获。
  • 附议。我们整个团队都在努力解决这个问题

标签: capybara capybara-webkit


【解决方案1】:

测试页面上有n个标记:

expect(find('.gmap_container')['data-markers'].split('},{').count).to eq(n)

【讨论】:

  • 我不再从事这个工作,其他人可以确认这个工作,我会接受这个答案吗?
  • 对我不起作用。试过find('.gmap_container'),没找到。不过可能是我的事。
【解决方案2】:

这可以做到,但需要更改创建标记的方式。您必须指示它们呈现为图像而不是画布元素:

new google.maps.Marker({
  position:  latLng,
  animation: google.maps.Animation.DROP,
  name:      business.get('name'),
  id:        business.get('id'),
  optimized: false, // <-- this is the stuff
  title:     business.get('name')
});

那么在你的测试中,你可以find('div[title="Business\ Title"]').click

如果可能,您可能只想考虑为测试环境执行此操作,但这取决于您和您的需求。

信用:http://blog.mojotech.com/selecting-google-maps-v3-markers-with-selenium-or-jquery/

希望这会有所帮助!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-12-10
    • 1970-01-01
    • 2014-01-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-08
    • 1970-01-01
    相关资源
    最近更新 更多