2017-06-27 8 views
-2

Java/Seleniumアプリケーションでいくつかの問題に取り組んでいますセレン:さまざまなxpathを使用して、特定のタイプの要素を反復処理しますか?

Webページに一連のクリック可能な要素があります。

MSG =#がある
//*[@id="msg-1276616953"]/div[8]/div/a[1] 

:私は、各XPATHがどのように見える

彼らと新しいタブを開くようになど、ウェブ要素のリストを生成するためにそれらを反復すると、特定のアクションを実行したいと思いますその要素の特定の識別子

クリック可能な要素ごとに特定のmsg-________が変更されます。つまり、次の要素は別のものかもしれません。

ページにこれらの要素が20個ある場合は、20個すべてのリストを生成したいのですが、Seleniumで行う方法がわかりません

私は任意およびすべてのヘルプここ

をいただければ幸いです、要素自体のソースです:あなたはのような何かを試すことができ

<a data-ng-if="currentSuperState != 'ON_HOLD' 
&amp;&amp; currentSuperState != 'EXPIRED'" target="_self" href="/someLinkId=1276617990" 
class="some-link-begin ng-binding ng-scope" data-btn-loc="my-link"> 
     Edit-Link 
    </a> 
+0

他の1-2の類似リンクにも 'HTML'を共有できますか? – Andersson

答えて

1

ページで利用可能なすべてのリンク

List<WebElement> elem = driver.findElements(By.TagName("a")); 

今uは、リストを反復処理し、あなたの条件に基づいて、あなたの目的の操作を行うことができますを検索し、たとえば、あなたは、属性を取得することができます(uがで一致させたいものは何でも特定のelemのためにif (elem.getAttribute("attribute name")).contains("yourDesiredText") {//Then do some Action}を使用し、あなたの望む結果を得る。

他の要素についても同様に試すことができます。

関連する問題