私のアプリケーションでは、1つのフォームは10個のelementsを持っています。すべての要素は同じIDを持っていますが、末尾に異なる番号が付いています。私はすべての要素を見つけたいと思います。
@FindBy(xpath=".//*[@id='ext-gen1095']")
WebElement period_type;
@FindBy(xpath=".//*[@id='ext-gen1472']")
WebElement months;
@FindBy(xpath=".//*[@id='ext-gen1097']")
WebElement period_start;
@FindBy(xpath=".//*[@id='ext-gen1464']")
WebElement submit;
@FindBy(xpath=".//*[@id='ext-gen1482']")
WebElement clear;
ベストアンサー
1. 開始時機能を使用します。
あなたの場合、XPathのID属性では、 ext-gen1
の部分は毎回同じです。
//*[starts-with(@id,'ext-gen1')]
2.Exに対して連続的に変化しない他の属性を調べる。 class、name、type、tabindex
などを使用して、XPathの間におよび関数を使用します。
//*[starts-with(@id,'ext-gen1') and contains(@name,'----')]