0

Rubyを使用してwatir-webdriverを使用して受け入れテストを行っています.watir webdriverがExtJsをサポートしているかどうかを尋ねたいですか? ExtJS によって動的に生成された要素を見つけようとしています。私は次のようなことをしようとしています

@browser = Watir::Browser.new :chrome
#Some step go to page
@cbo = @browser.execute_script "return Ext.getCmp('cboCategory')"

しかし、それはうまくいきませんでした。アドバイスをお願いします。ありがとうございました。

4

1 に答える 1

1

ExtJS ページは、特に要素を見つける際にテストするのが困難です。

私が役立つと思うヒントのいくつかを次に示します。

  • 動的に生成された ID は決して使用しないでください。お気に入り(:id, 'ext-gen1302')
  • 絶対/無意味な XPath を使用しないでください。//div[4]/div[3]/div[4]/div/div/div/span[2]/span

  • 意味のある自動生成された部分 ID とクラス名を利用します。

    たとえば、のExtJS グリッドの例:(:css, '.x-grid-view .x-grid-table')便利です。複数のグリッドがある場合は、それらにインデックスを付けるか、識別可能な祖先を見つけてください(:css, '#something-meaningful .x-grid-view .x-grid-table')

  • ソース コードで意味のあるクラス名を作成します。ExtJS は、カスタム クラス名に と を提供するため、ソース コードに追加clsして、 で取得できます。tdClscls:'testing-cmb-category'(:css, '.x-panel .testing-cmb-category')

このトピックに関して私が行った他の回答:

于 2013-10-03T01:32:21.783 に答える