2017-12-31 51 views
-1
<i> 
@FindAll(@FindBy(xpath = ".//input[contains(@name,'adv_xfer_fields') 
and contains(@name,'::amounts')]")) 
List <WebElement> amounts; 
</i> 

私は入力フィールドに動的なWebテーブルを持っています。理想的にはこれに値を渡す必要があります。しかし、私はこれを実装する方法がわからないのですか?List FindALL webelementを実装する方法

public List<WebElement> getAllAmounts() { 
    return amounts; 
} 

あなたの質問を1として

+1

FindBy基準は1つだけですが、FindAllを使用する必要はありますか?これを参照してください - https://stackoverflow.com/questions/25914156/difference-between-findall-and-findbys-annotations-in-webdriver-page-factory – Grasshopper

答えて

0

を助けてください、私はあなたの試してみたコード内の任意のエラーが表示されませんが、次のように間違いなく我々はもう少し正確に構成することができます。

 @FindAll({@FindBy(xpath = ".//input[contains(@name,'adv_xfer_fields')]"), 
       @FindBy(xpath = ".//input[contains(@name,'::amounts')]")}) 

     List <WebElement> amounts; 

ドキュメントごとに、FindAllを使用して、ページオブジェクトのフィールドをマークして、参照に一連の@FindByタグを使用する必要があることを示します。要素が文書順になることは保証されていませんが、FindBy基準に一致するすべての要素を検索します。

+0

この問題は、有効なFindAllであるが、元のpostは "and"条件を持ち、あなたの例はFindByのものを見つけると述べたので、 "or"条件を提供します。私は、解決策は外のFindAllを削除し、元のポスターのロケータの残りの部分を保持することだと思います。 –

関連する問題