0

我被要求使用Selenium爲網站編寫一些測試。有些頁面上有由「chart.js」庫生成的圖表。測試要求我:如何將Selenium與「chart.js」一起使用

  • 閱讀的一些數據值的大小,在圖表中
  • 單擊圖表上的某些酒吧。
  • 將鼠標懸停在某些條和驗證工具提示

麻煩的是圖表被作爲一個單一的HTML canvas元件實現,所以沒有DOM圖表硒可以操縱的細節。

回答

0

您將無法使用Selenium直接訪問圖表,因爲沒有DOM,如您所述。可能有一種方法可以使用JavascriptExecutor訪問圖表數據以運行JS命令。我不熟悉chart.js,但我已經編寫了針對CANVAS元素的自動化。我得到了開發人員,並與他們談論了我需要訪問的內容,他們給我指出了方法等方面的指示,以便我可以調用以獲取所需的內容。我使用頁面對象模型,所以我最終編寫了一些圍繞訪問CANVAS的JS代碼的Java函數。

+0

我認爲這可能是唯一的出路。在chart.js的情況下,我甚至不確定是否可以測試懸停文本和點擊,因爲庫似乎沒有任何方式告訴我們在哪裏點擊/懸停特定的數據元素。我覺得很奇怪,一個圖書館會讓自己無法檢驗! – Stormcloud

相關問題