2017-04-09 9 views
0

私は、同時に2つの要素を返すメソッドを作成しようとしています。これは私のコードです:複数の要素を返すアセンブラ

this.Wait.Until(ExpectedConditions.ElementExists(By.Id("mm_date_8"))); 
this.Wait.Until(ExpectedConditions.ElementExists(By.Id("dd_date_8"))); 

return this.Driver.FindElements(By.Id("mm_date_8"), By.Id("dd_date_8")); 

私はそれを正しくする方法がわかりません...あなたは私を助けてくれますか? ありがとうございます!

答えて

1

次の構文が正しいかどうかわかりません。

​​

代わりに次のようにすることができます。

List<IWebElement> elements = new List<IWebElement>(); 
AddElementsToList(elements, this.Driver.FindElements(By.Id("mm_date_8")); 
AddElementsToList(elements, this.Driver.FindElements(By.Id("dd_date_8")); 
// now in your calling method you can easily index list. 
return elements; 

public void AddElementsToList(List<IWebElement> elementList, IEnumberable<IWebElement> elementEnumerable) 
{ 
    if (elementEnumerable != null && elementEnumerable.Any()) 
    { 
     elementList.AddRange(elementEnumerable); 
    } 
} 

FindElementsの出力がIEnumerableであるとします。しかし、他の種類のコレクションであれば、そのアイデアは変わりません。

あなたは要素があなたの代わりにリストを作成するどのようなIDを作成することができ属するかを知る必要がある場合は、文字列があなたのIDKEYになり

Dictionary<string, IWebElement> 

関連する問題