0

Webサイトのテストを書くためにSeleniumを使用するように求められました。いくつかのページには、 "chart.js"ライブラリによって生成されたグラフがあります。チャート上の特定のバー上のグラフのデータ値の一部 "chart.js"でSeleniumを使用する方法

  • クリックのサイズを読む

    • :テストが私を必要としています。
    • 特定のバーの上にマウスを移動し、検証ツールチップ

    トラブルはチャートは、単一のHTML canvas要素として実装されているので、セレンを操作できることをグラフの詳細については、一切DOMはありません。

  • 答えて

    0

    あなたが指摘したように、DOMが存在しないため、Seleniumを使用して直接チャートにアクセスすることはできません。 JSコマンドを実行するためにJavascriptExecutorを使用してチャートデータにアクセスする方法があります。私はchart.jsに精通していませんが、私はCANVAS要素に対して自動化を書いています。私は開発者と一緒にアクセスしてアクセスする必要があることについて彼らに話し、彼らは私に必要なものを得るために呼び出すことのできる方法などの点を教えてくれました。私はページオブジェクトモデルを使用しているので、CANVASにアクセスしたJSコードをラップするJava関数をいくつか書くことになりました。

    +0

    これはおそらく唯一の方法だと思います。 chart.jsの場合、特定のデータ要素をクリック/ホバーする場所を教えてくれるライブラリがないため、ホバーテキストとクリックをテストすることが可能であるかどうかはわかりません。私は、図書館が自己をテスト可能にすることが奇妙であることを知っています! – Stormcloud

    関連する問題