0

すべての要素とその値を取得しようとしています。いくつかのアイテムを含むテーブルがあります (IOS)

テーブル内のすべてのアイテムは同じ名前ですが、値が異なりますが、次を使用して一度に要素を取得しようとしています

List<WebElement> l = driver.findElements(By.name(name)); 

次に、リストを繰り返し処理して値を取得します

for(int i =0; i < l.length; i++){
 String val = ((MobileElement) l.get(i)).getAttribute("value");
}

最初の反復 (最初の要素) でのみ正しい値を取得しています。他のすべては空の値を返します...

コードを次のように変更する場合:

        //1
        List<WebElement> l = driver.findElements(driver, By.name(name));
        String val = ((MobileElement) weList.get(0)).getAttribute("value");

        //2
        l = driver.findElements(driver, By.name(name));
        val = ((MobileElement) weList.get(1)).getAttribute("value");

        //3
        l = driver.findElements(driver, By.name(name));
        val = ((MobileElement) weList.get(2)).getAttribute("value");

正しい値を取得しています。

アクセスしようとするたびに要素をプルする必要があるようです。それはバグですか、それとも単に何かが足りないのですか?

4

1 に答える 1