2011-04-10 28 views
0

我有一个使用SVG测量仪的Web应用程序。该仪表显示我的电网(多台机器)的健康状况。Selenium和SVG

测量仪有3种颜色:绿色,黄色和红色。

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

这可能使用Selenium 2.0吗?

回答

1

硒可以让你使用的JavaScript,得到在DOM任何元素的属性,所以像

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

将让你填充颜色,但它可能会回来,如:“RGB (255,0,0)“为红色。你必须检查它,并相应地设置你的比较逻辑。

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

+0

即时通讯测试铬和Firefox最新......所以浏览器版本不应该是一个问题。 – Eli 2011-04-13 14:09:13

+0

也,我想得到箭头方向...不是颜色。 (箭头指向一定颜色的特定范围)。我结束了这样的事情:String arrowDegrees = driver.findElementById(“myGuage).getAttribute(”tranform“); – Eli 2011-04-13 14:11:49

0

所以我想通了,我认为,没有测试它呢... svg元素出现在圆顶上,就像 ,所以我可以走过去,直到我找到我需要的属性..开关是在我的情况下变形。这个属性是使用GWT生成的。你也可以分配ID的使用GWT女巫使整个过程变得更简单