1

自動化しようとしているページには、異なるレベルに n 個の同じボタンがあります。これらの n 個のボタンは同じ属性を持っています。2番目をクリックしたい場合、どうすればwebdriverとCSSを使用してそれを行うことができますか?

4

2 に答える 2

2

たとえば、一意の属性が class='custom_button' であるとします。

List <WebElement> custButtons = driver.findElements(By.className("custom_button"));
custButtons.get(2).click();

これにより、ページ上のクラス名「custom_button」の 3 番目のボタンがクリックされます。

于 2012-12-20T09:38:32.380 に答える
1

プラシャント シュクラは正しい答えを持っています。


とにかく、単一のコマンドを使用して単一の行で実行したい場合:

単一のCSSセレクターでそれを行う方法を知り:nth-child()ません(許可しないような疑似セレクターでさえ)。でも、その答えを知っている人がいるかもしれません。私が提案できるのは、XPath セレクターです。descendant軸を使うのがコツです。

たとえば<a class='post-tag'>、ページの 2 番目の要素 (たまたまwebdriverこのページのタグです:)) を選択したい場合は、他に関係なく、次のようにします。

driver.findElement(By.xpath("/descendant::a[@class='post-tag'][2]"));
于 2012-12-20T09:39:10.500 に答える