2017-11-20 7 views
0

オブジェクトの日付をキャプチャしようとしていますが、オブジェクトにIDまたは名前属性がありません。また、 "ng-binding"のクラスを持つ複数のアイテムがあるので、私はそれを使うことはできないと思います。Xpathのほかにカスタム属性をキャプチャする方法

カスタム属性を使用してオブジェクトから値を取得する方法はありますか? (:、 "$ ctrl.app.publishedDate" NG--HTMLを結合)

私が撮影しようとしているオブジェクトが

<span ng-bind-html="$ctrl.app.publishedDate" class="ng-binding">11/20/2017</span> 
ある意味 varObject = find_elementが言うにはRubyで私のための方法があります

私は同じ問題に近いと思われる古い投稿を見ましたが、私は確信していました。

Selenium webdriver : how to find the element in DOM based on custom attribute

おかげで、 スコット

答えて

1

あなたはXPathを使用したくない理由はありますか?私があなたの質問で参照したと思うRuby Selenium WebDriver find_elementメソッドは引数としてXPathsを受け入れます。

次のXPathを使用することができます。

"//span[@ng-bind-html='$ctrl.app.publishedDate']" 

あなたのRubyコードは次のようになります。チャンピオンのような

varObject = @driver.find_element(:xpath,"//span[@ng-bind-html='$ctrl.app.publishedDate']") 
+0

作品! // spanを// *に変更する必要がありましたが、それ以外は機能しています。私はこの方法でページ上の他のオブジェクトを設定し、それがどのように進むのかを試してみる必要があります。 – user3531858

+0

私のコードにbeginリカバリピースを追加する必要がありました。私は "ng-bind-html"は静的なフィールドではないと思います。時には "ng-bind"に変更されることがあります。 – user3531858

関連する問題