2013-07-05 85 views
0

我试图用watir web驱动程序测试highchart饼图。我遇到了找到一小块馅饼的问题。用Watir测试Highcharts饼图

#Get the pie 
series1 = browser.element(:css => 'g.highcharts-tracker') 

#Get the pieces 
all_path_elements = series1.elements(:css => 'path') 
#get the second to last 
points = all_path_elements[-2..-2] 

范围-1到-1它将能够得到最后一块。 -2至-2仍然是最后一块。 -3至-3将获得倒数第三名。它会跳过第二个到最后一个。我认为,因为它是最小的。但我可以用我的鼠标找到它。 是否有另一种方法来查找路径元素?所以也许另一种方法可以解决我的问题。 我做了一个红色的小圆点的地方跳过。 http://i.stack.imgur.com/tDAaH.png

+0

@justinko对不起justin,我已经为此发布了一个问题。 – PeterZDE

+1

如果您创建精确图表的js-fiddle,它会非常有帮助(请转至http://www.highcharts.com/demo/pie-basic并单击jsFiddle中的编辑)。同样,你想用这小块馅饼做什么? –

回答

0

我自己找出解决方案。而不是悬停在每个路径元素上。我做了每个路径元素的onmouseover的火灾事件。

series1 = browser.element(:css => 'g.highcharts-tracker') 
all_path_elements = series1.elements(:css => 'path') 
points = all_path_elements[0..-1] 
point = points.find do |p| 
p.fire_event "onmouseover" 
puts browser.elements(:css => 'g.highcharts-tooltip tspan')[3].text 
end