如何编写cssSelector来查找保存按钮

时间:2013-08-19 22:33:17

标签: css webdriver

请帮我写一下css Selector来识别Save Button。 WebElement save_btn = driver.findElement(By.cssSelector(“”));

<div id="button-1050" class="x-btn actionButton x-box-item x-toolbar-item x-btn-default-toolbar-small x-noicon x-btn-noicon x-btn-default-toolbar-small-noicon" style="border-width: 1px; left: 293px; top: 5px; margin: 0px;">
<em id="button-1050-btnWrap">
<button id="button-1050-btnEl" autocomplete="off" role="button" hidefocus="true" type="button" style="height: 16px;" class="x-btn-center">
<span id="button-1050-btnInnerEl" class="x-btn-inner" style="">Save</span>
<span id="button-1050-btnIconEl" class="x-btn-icon "></span>

2 个答案:

答案 0 :(得分:0)

我的正式答案是:

save_btn = driver.findElement(By.xpathSelector("//*[text()[contains(.,'Save')]]"));

答案 1 :(得分:0)

使用XPath的另一种方法是使用css选择器获取页面上的按钮列表。在Java中:

List<WebElement> buttonList = driver.findElements(By.cssSelector("button"));

在此之后,您可以从列表中选择您需要的任何按钮。

如果页面上有大量按钮,您可以使用更具体的css查询(例如"table button")获取它们的子集(这将使您获得表中包含的所有按钮)。 w3schools CSS Reference帮助了我很多。

注意:请谨慎使用此方法,在这些页面上,按钮(或您放入列表中的任何元素)都可能会在页面上移动,因为它会在页面上平滑。我个人只在一两个地方使用它,以防我需要重构。