【问题标题】:Selenium and SVG硒和 SVG
【发布时间】:2013-06-03 20:29:31
【问题描述】:

我有一个使用 SVG 仪表的 Web 应用程序。此仪表显示我的网格(几台机器)的运行状况。

仪表有 3 种颜色:绿色、黄色和红色。

我希望能够编写一个测试来确保该仪表正确地表示数据。也就是说,我的测试将计算预期的网格健康值,并确保仪表指向适当的区域。

这可以使用 Selenium 2.0 吗?

【问题讨论】:

    标签: selenium svg


    【解决方案1】:

    Selenium 将允许您使用 JavaScript 获取 DOM 中任何元素的属性,例如

    var gaugeFill = document.getElementById('mygauge').getAttribute('fill');
    

    会给你填充颜色,但它可能会像这样返回:红色的“rgb(255,0,0)”。您必须对其进行检查,并相应地设置比较逻辑。

    另外,你没有说你是如何渲染 SVG 的。有很多方法......我所描述的适用于现代浏览器,其中 SCV 元素直接是 DOM 的一部分,但对于旧版浏览器或如果您使用的是 Raphael,情况并非如此。

    【讨论】:

    • 我在 chrome 和 firefox 上测试最新...所以浏览器版本应该不是问题。
    • 另外,我想获得箭头方向...而不是颜色。 (箭头指向具有某种颜色的某个范围)。我最终做了这样的事情: String arrowDegrees = driver.findElementById("myGuage).getAttribute("tranform");
    【解决方案2】:

    所以我想通了,我想,还没有测试它...... svg 元素出现在圆顶中就像 所以我可以四处走动,直到找到我需要的属性..witch 在我的情况下是 transform。此属性是使用 GWT 生成的。您还可以使用 GWT 分配 id,这使整个过程变得更简单

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-10
      • 2011-11-26
      • 1970-01-01
      • 1970-01-01
      • 2015-09-27
      相关资源
      最近更新 更多