我正在尝试连接到网站的程序,并单击其上的所有按钮。问题是按钮是"相等",并且相同我的意思是它们中的相同文本,相同的链接和相同的CSS。
考虑以下结构:
<content>
<line1>
<block1> some text </block1>
<button> Start! </button>
<line2>
<block2> some different text </block2>
<button> Start! </button>
<line3>
<block3> some text different than 1 and 2 </block3>
<button> Start! </button>
如何制作单击所有按钮的功能?我已经尝试用xpath找到它们了,但是一旦我将它们放在列表中,我就无法点击它们,因为我无法设置正确的等待,所以没有任何反应。
答案 0 :(得分:0)
尝试使用以下内容: 1)创建列表;将所有按钮放在那里,遍历列表,点击每个元素(即按钮)。
List <WebElement> buttonList=
driver.findElements(By.cssSelector("button"));
for(int i=0; i<buttonList.size(); i++)
{
buttonList.get(i).click();
}
希望这会对你有所帮助。
答案 1 :(得分:0)
将具有相同属性的所有按钮添加到列表中并迭代列表。我尝试过这对我来说非常有效。
List buttons = driver.findElements(By.xpath("//button[text()='button text']"));
for(int i=0;i<=buttons.size();i++){
((WebElement) buttons.get(i)).click();
}
请告诉我它是否适合你...