поддержка SVG
#1
Отправлено 11 апреля 2012 - 03:06
#3
Отправлено 11 апреля 2012 - 14:45
//*[local-name()='svg' and namespace-uri()='http://www.w3.org/2000/svg']", но познаний не хватает понять, куда именно надо сие следует добавить, чтобы адская машина таки заработала)
#4
Отправлено 13 апреля 2012 - 10:07
да, логично, просто только что нашла вот такую вещь: http://www.qaautomation.net/?p=388, где сказано, что следует "specify your xpath with the namespace uri like this instead:
//*[local-name()='svg' and namespace-uri()='http://www.w3.org/2000/svg']", но познаний не хватает понять, куда именно надо сие следует добавить, чтобы адская машина таки заработала)
В общем-то, в приведённой вами статье неплохо расписывается, как указывать элементы на странице для WebDriver'а, в том числе и SVG.
//*[local-name()='svg' and namespace-uri()='http://www.w3.org/2000/svg']- эта штука вставляется в xpath, с помощью которого вы будете искать элементы внутри SVG.
Если приведёте пример вашей страницы HTML с SVG, то смогу написать конкретный xpath к какому-нибудь элементу.
#5
Отправлено 13 апреля 2012 - 12:33
public class SvgTest {
public static void main(String[] args) {
WebDriver driver = TestDriver.getWebDriver();
driver.get("http://referencewebapp.qaautomation.net/svg.php");
WebElement element = driver.findElement(By.xpath("//*[local-name()='svg' and namespace-uri()='http://www.w3.org/2000/svg']/*[local-name()='g' and namespace-uri()='http://www.w3.org/2000/svg'][4]/*[local-name()='g' and namespace-uri()='http://www.w3.org/2000/svg'][7]/*[local-name()='text' and namespace-uri()='http://www.w3.org/2000/svg']"));
System.out.println(element.getText());
element.click();
}
}
Так вот, клик по элементу не работает, вебдрайвер падает:
WebDriverException: [JavaScript Error: "a.scrollIntoView is not a function"...Но текст из элемента извлекается успешно. Возможно вам это поможет.
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных

