Ruby で Webdriver を使用しており、iFrame 内の html5 dash-cenc プレーヤーのシークおよびボリューム スライダー コントロールを確認したいと考えています。
アイデアは、プレーヤーが「x」時間先にシークするコマンドを受け入れるか、再生の先頭に移動してからシーク プログレス バーの半分までシークするかを確認することです。問題は、プレーヤーを手動でテストしたところ、「矢印キー」が機能しなかったため、再生をシークする唯一の方法は、シークバーの目的の場所をクリックすることです。
プレーヤーが再生を開始するときに確認したい html の一部を次に示します。
<div id="progressbar" data-value="0" class="ui-slider ui-slider-horizontal ui-widget ui-widget-content ui-corner-all"><div class="ui-slider-range ui-widget-header ui-corner-all ui-slider-range-min" style="width: 61.436170212766%;"></div><span class="ui-slider-handle ui-state-default ui-corner-all" tabindex="0" style="left: 61.436170212766%;"><div class="tooltip-container" style="display: none;"><div id="time-tooltip">0:03:50</div><div class="triangle-down"></div></div></span></div>
私はいくつかの例を試してみましたが、うまくいきませんでした.
reg = @driver.find_element(:id, "fancybox-frame")
@driver.switch_to.frame reg
@driver.find_element(:id, "toggle-play").click
メディア コントロールのスクリーンショットと Google Chrome ブラウザーの「要素の検査」部分を添付しました (プレーヤーは Google Chrome でのみ動作し、Firefox では動作しません)。