当前位置: 首页 > 知识库问答 >
问题:

Selenium Java和PageObjectModel,用于按id查找包含字符串的元素

邹曦之
2023-03-14

我有一个使用Selenium和Page对象模型的Java项目,需要找到ID以字符串“Cancel”结尾的按钮。我也尝试过使用正则表达式,我在stackoverflow上找到了一些包括XPath的解决方案,但考虑到网站的设计经常发生变化,我不使用XPath。我还发现,作为一种解决方案,您可以使用ends with CSS选择器:

By.css选择器("[id$=default-create-firstname]")但是我想利用页面对象模型并使用注释@FindBy,因此省略By选择器。

@FindBy(id = "ButtonToCancel")
private WebElement buttonToCancel;

如何选择页面中以*取消结尾的所有ID,而不对每个ID查找@FindBy进行硬编码?据我所知,正则表达式模式无法正常工作:@FindBy(id="*取消")

共有1个答案

东深
2023-03-14

试试这个:

@FindBy(css = "*[id$='cancel']"
private List<WebElement> cancelButtons;

它将返回id字段中以“取消”结尾的WebElements列表。

 类似资料:
  • 问题内容: 我有一个DOM元素,其ID类似于: 它是由我的Ruby onRails应用程序构建的。我需要能够通过jQuery获取此元素,以便我可以沿DOM向上移动以删除其父级的父级,该父级具有一个我事先无法访问的变量ID。 有人知道我该怎么做吗?以下代码似乎无效: 经过进一步检查,以下内容: 返回一个对象,但是当我在其上运行“ .html()”或“ .text()”时,结果始终为null或只是一个

  • 问题内容: 要查找当前文件夹中所有包含“ foo”的文件,我使用: 要查找当前文件夹中所有包含“ bar”的文件,我使用: 但是,如何查找不包含“ foo”和“ bar”的所有文件? 问题答案: 要打印 线 不包含某些字符串,可以使用标志: 这样就为您提供了 不 包含或的所有行。 要打印不包含某些字符串的 文件 ,请使用该标志。要不匹配多个字符串,可以将正则表达式与标志一起使用(可以使用多个reg

  • 我的Firebase查询有点麻烦。我想查询objects,其中objects子值包含某个字符串。到目前为止,我有一些东西看起来是这样的: 但这只给出起始值为“b”的对象。我想要包含字符串“b”的对象。我该怎么做?

  • 问题内容: 我一直在尝试找出如何使用MySQL进行查询的方法,该查询检查特定列中的值(字符串)是否包含某些数据(字符串),如下所示: 在PHP中,该函数称为,因此可能: 问题答案: 实际上很简单: 的是用于设置任何字符(无,一个或多个)的通配符。请注意,这在非常大的数据集上可能会变慢,因此,如果数据库增长,则需要使用全文索引。

  • 在寻找这个问题的答案时,我也遇到过类似的利用LINQ的方法,但是我还不能完全理解它们(并因此实现它们),因为我对它还不熟悉。基本上,我想说的是: 检查列表的任何元素是否包含特定字符串。 如果是,则获取该元素。 老实说,我不知道该如何着手做那件事。我能想出的是这个(当然不工作): 我知道为什么它不起作用: 不返回,因为它将检查列表的整个元素是否与我指定的字符串匹配 不会找到匹配项,因为它将再次检查与

  • 问题内容: 我一直在寻找一个命令,该命令将从当前目录返回文件名中包含字符串的文件。我已经看到和命令可以找到以某些内容开头或结尾的文件。 如何返回文件名中包含字符串的文件列表? 例如,if 是当前目录中的文件。 如何返回此文件和其他包含字符串的文件?使用诸如 问题答案: 用途: 它将在当前目录中找到所有包含“字符串”的文件(如果要递归,则删除),并将其打印在屏幕上。 如果要避免文件包含“:”,则可以