Ruby 使用Watir测试饼图中的高位图表

Ruby 使用Watir测试饼图中的高位图表,ruby,automated-tests,watir,watir-webdriver,Ruby,Automated Tests,Watir,Watir Webdriver,我试图用watir web驱动程序测试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_element

我试图用watir web驱动程序测试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将得到最后一名的第三名。 它将从第二个跳到最后一个。我想是因为它是最小的。但我能用鼠标找到它。 是否有其他方法来定位路径元素?所以也许另一种方法可以解决我的问题。 我在那块被跳过的地方做了一个红点。
我自己想出了解决办法。而不是将鼠标悬停在每个路径元素上。我对每个路径元素的onmouseover执行了一个fire事件

 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

@justinko抱歉justin,我已经发布了一个问题。如果你创建一个js的精确图表(转到并单击JSFIDLE中的编辑),这将非常有帮助。还有,你想拿那小块馅饼做什么?