0

dropdown要素に移動するときに、「C」をクリックして選択する必要がありますC

x-combo-list-item x-combo-selectedこのコードをコードで使用して要素をクリックすると、そのクラスが変更されます

drivefindElement(By.className("x-combo-list-item x-combo-selected")).click();

それは例外をスローします

org.openqa.selenium.IllegalLocatorException: Compound class names are not supported. 
Consider searching for one class name and filtering the results.

この要素をクリックする方法を教えてください。

html コード .. Firebug から

<--div id="xyz" class="x-combo-list-inner" style="width: 253px; height: 105px;">

<--div class="x-combo-list-item" ext:qtip="">A<--/div>

<--div class="x-combo-list-item" ext:qtip="">B<--/div>

<--div class="x-combo-list-item x-combo-selected" ext:qtip="">C<--/div>

<--div class="x-combo-list-item" ext:qtip="">D<--/div>

<--div class="x-combo-list-item" ext:qtip="">E<--/div>

<--/div>
4

2 に答える 2

0

クラス名='x-combo-list-itemx-combo-selected'を持つWebページ上の複数の要素が原因で、このエラーが発生する可能性があります。

これを確認するには、Firefox用のFirepathアドオンをインストールし、コードで使用しているxpathを試してください。

ファイアパスを使用して、クリックしようとしている正しいWebElementを見つけてください。WebElementを右クリックしてxpathをコピーすることで、firebugを使用してページ上の要素のXPathを取得することもできます。

于 2012-07-25T15:05:44.527 に答える
0

セレクターを xpath に変更することを検討してください。

driver.findElement(By.xpath("//div[@class='x-combo-list-item x-combo-selected']")).click();
于 2012-07-25T14:42:50.193 に答える