答えて
API-documentationを引用できますか?要素または要素のリストの場所を特定するため代替メカニズムを示すために、Pageオブジェクトのフィールドをマークするために使用
。
PageFactory#proxyElement
と組み合わせて使用すると、ユーザーはPageObjectsをすばやく簡単に作成できます。だから、
あなたがPageObject
パターンを使用する場合は、クラスのメンバーにこの注釈を追加し、WebDriver
は、自動的に(PageFactory.initElements()
と呼ばれる)オブジェクトの初期化時に、それに該当するWebElement
Sを注入。
このリンクに従うことを強くお勧めします。詳細についてはPageObject
pattern and @FindBy
annotations usageをお読みください。
私は私ではなくオブジェクトによってとしてあなたロケータを保存することがより有用見つけることを発見していますが、あなたのページをサポートするためのページ工場を使用して
オブジェクトの場合には、ロケータの建設を支援するためですWebElementsよりも柔軟性があり、StaleElementExceptionに陥ることはありません。代わりに
@FindBy(id = "idOfYourElement")
WebElement myLocator;
あなたも要素がないことを主張したときに、あなたのロケータを使用するか、ExpectedConditionsヘルパーでそれを使用することができるこの方法の
By myLocator = By.id("idOfYourElement")
。
Byオブジェクトの代わりに誰かが@FindByを使用する理由を理解するのに苦労しています。 – stuart
@elroso注釈を削除するときにPageFactory.initElements(driver、page)メソッドを使用できますか?ありがとう –
@FindByではなくByを使用することの良い説明。ありがとう:) –
ます。またPagefactoryを使用して、のようなもの持つことができます。どのように用として、今
@FindBy(how = How.NAME, using = "logonName")
private WebElement logonNameField;
@FindBy(how = How.NAME, using = "password")
private WebElement passwordField;
を、あなたが持つことができます。
- CLASS_NAME
- CSS
- ID
- ID_OR_NAME
- LINK_TEXT
- NAME
- PARTIAL_LINK_TEXT
- TAG_NAME
- XPATH
- クラス
それとも、webdriverを用APIの外であろうと、あなた自身のDOM検索プラスのXpathを使用することができますが、それは動作するはずです。
- 1. @FindBy注釈CSS
- 2. @FindBy注釈とPageFactoryを使用した動的要素のマッピング
- 3. 使用方法Autowired注釈
- 4. 特定の注釈で注釈付けされ、別の注釈で注釈付けされていない豆のスキャンを除外する方法は?
- 5. symfony3でfindByと似た使い方は?
- 6. kotlinの@Autowiredのような春の注釈の使い方は?
- 7. 注釈付きトランザクションアドバイザの使用方法
- 8. 注釈とリソースと自動注釈付き注釈
- 9. Spring mvc注釈検証のカスタム注釈
- 10. 注釈のないASP MVCの使用
- 11. は@Override注釈
- 12. プロデューサーは、注釈
- 13. 注釈
- 14. 春GeneratedValue注釈の使用
- 15. 使用Guiceの注釈(スカラ)
- 16. Androidサポートの使用注釈
- 17. Morris.jsに注釈/注釈を追加
- 18. JPA 2.0フィールド注釈対メソッド注釈
- 19. 注釈座標を使用して注釈を削除する
- 20. クラスタ注釈からすべての注釈をループしたい
- 21. ObjectMapperは、私はこのような注釈が持っている注釈
- 22. (注釈)
- 23. TFS注釈はエラー
- 24. 注釈DBはrpy2
- 25. Python型注釈:プロパティに注釈を付ける方法はありますか?
- 26. spring3.0注釈
- 27. サイズイメージピンの注釈
- 28. スウィフトマップキットの注釈
- 29. Nashornの注釈
- 30. ユニットテストの注釈?
ご回答ありがとうございます。だから、別の質問があります...それは動的にロケータを変更する要素に使用されますか? – mra419
@ user1163375「ロケータを動的に変更する」とはどういう意味ですか? –
私の理解は「@FindBy」です。注釈は、要素IDがWebアプリケーション内で動的に変化しているときに使用されます。間違っていると私を修正してください。 – mra419