2014-02-26 86 views
1

我打算使用selenium自動化qlikview頁面中顯示的圖表。由於這些圖表在整個這些頁面中作爲圖像進行訪問,因此難以進行交互&在這些圖表上查找特定元素/文本。使用硒自動化qlikview圖表

QlikView的演示鏈路: - http://ap.demo.qlik.com/QvAJAXZfc/opendoc.htm?document=qvdocs%2FRetail%20Omni-Channel%20Analytics.qvw&host=Demo11&anonymous=true

代碼以懸停鼠標在圖表上: -

Point coordinates = driver.findElement(By.xpath("//div[@id='68']/div[2]/div[2]/img")).getLocation(); 
Robot robot = new Robot(); 
robot.mouseMove(coordinates.getX(),coordinates.getY()); 
Thread.sleep(5000); 

代碼來捕捉工具提示值: -

String Tooltip = driver.findElement(By.xpath("//div[@class = 'QvHover']/span[2]")).getText(); 
System.out.println("Tooltip value:- "+Tooltip); 

雖然我想出了一種方法來捕獲它的工具提示值,但除此之外,我無法找到方法來定位/捕獲其他元素,如折線圖上的線條圖例,圖例等

任何幫助將appriciated

回答

1

下面是使用Java

步驟1.找到QlikView的框架下硒使用Qlickview數據驗證代碼。

driver.switchTo().frame(driver.findElement(By.className("report_iframe_test"))); 

步驟2.轉到HTML元素下的QlikView幀出現,這是使用IE顯影劑工具

driver.findElement(By.id("PageContainer_test")); 
driver.findElement(By.id("MainContainer_test")); 

定位元件上存在的QlikView,前後檢查元件之後顯示。從高光部分

String id = driver.findElement(By.id("32_test")).getText(); 
System.out.println("after frame--"+id); 

sysout將打印報告元素值,我們可以與數據庫進行比較以進行數據驗證。