【发布时间】:2013-06-03 20:29:31
【问题描述】:
我有一个使用 SVG 仪表的 Web 应用程序。此仪表显示我的网格(几台机器)的运行状况。
仪表有 3 种颜色:绿色、黄色和红色。
我希望能够编写一个测试来确保该仪表正确地表示数据。也就是说,我的测试将计算预期的网格健康值,并确保仪表指向适当的区域。
这可以使用 Selenium 2.0 吗?
【问题讨论】:
我有一个使用 SVG 仪表的 Web 应用程序。此仪表显示我的网格(几台机器)的运行状况。
仪表有 3 种颜色:绿色、黄色和红色。
我希望能够编写一个测试来确保该仪表正确地表示数据。也就是说,我的测试将计算预期的网格健康值,并确保仪表指向适当的区域。
这可以使用 Selenium 2.0 吗?
【问题讨论】:
Selenium 将允许您使用 JavaScript 获取 DOM 中任何元素的属性,例如
var gaugeFill = document.getElementById('mygauge').getAttribute('fill');
会给你填充颜色,但它可能会像这样返回:红色的“rgb(255,0,0)”。您必须对其进行检查,并相应地设置比较逻辑。
另外,你没有说你是如何渲染 SVG 的。有很多方法......我所描述的适用于现代浏览器,其中 SCV 元素直接是 DOM 的一部分,但对于旧版浏览器或如果您使用的是 Raphael,情况并非如此。
【讨论】:
所以我想通了,我想,还没有测试它...... svg 元素出现在圆顶中就像 所以我可以四处走动,直到找到我需要的属性..witch 在我的情况下是 transform。此属性是使用 GWT 生成的。您还可以使用 GWT 分配 id,这使整个过程变得更简单
【讨论】: