如何在Capybara中对SVG元素执行click事件

时间:2016-04-24 16:39:43

标签: javascript selenium svg capybara

您好我是Capybara和selenium的新手。我正在使用gem 'capybara' and gem 'selenium-webdriver'。我有一个视图,我必须点击一个图标。视图的HTML是

<svg class="assign-job icon icon-box-outgoing" ng-click="something">
   <use xlink:href="#icon-box-outgoing"></use>
</svg>

我想对此元素执行click事件。我也尝试过使用xpath但是没有工作。我附上截图请找到。enter image description here

2 个答案:

答案 0 :(得分:2)

您可以使用CSS选择器点击svg元素:

find(:css, "svg.assign-job.icon-box-outgoing").click

或点击use元素:

find(:css, "use[href='#icon-box-outgoing']").click

答案 1 :(得分:0)

您可以使用 xpath 来标识元素。

//div[@class='jobActionsDisplayDeterminer']/*[name()='svg']/*[name()='use'][@xlink:href='#icon-box-outgoing']