我刚开始使用Selenium Webdriver,就立即遇到了一个问题,涉及要尝试选择/单击的所有按钮,这些按钮都没有ID并共享同一类。
所以我想知道如何通过它们包含的唯一文本来选择它们。
我可能正在考虑使用CSS选择器,但是我不确定如何告诉它寻找特定文本以选择元素。
我目前所拥有的是:
using OpenQA.Selenium;
using OpenQA.Selenium.Firefox;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using OpenQA.Selenium.Internal;
namespace SeleniumTest1.Methods
{
public class HomePage
{
private readonly IWebDriver _browser;
public HomePage(IWebDriver browser)
{
_browser = browser;
}
public IWebElement SearchBox()
{
return _browser.FindElement(By.Id("searchBox"));
}
public void ImageButton()
{
_browser.FindElement(By.CssSelector("a")).Click();
}
}
}
到目前为止非常基本。
我有CssSelector的地方,不确定是否要说选择包含文本“ xyz”的“ a”。
我已经尝试过寻找方法,但找不到任何东西,尽管我觉得这一定是一个以前提出的问题,谢谢。
问题内容: 我的网站上有一个选择控件。我正在使用页面对象与页面进行交互。如果我这样做(在我的课程下的前两行和我的方法中) 它以空指针失败。我也尝试了没有。 现在,如果我在我的方法中执行此操作,则一切正常,然后选择正确的项目 这是该控件的实际网页摘要(已编辑以保护无辜者) 让我说我可以解决我的问题, 但是 我不明白为什么“ 正常 ”路径无法正常工作。 问题答案: 那是因为该类具有以下构造函数: 见J
问题内容: 如果我搜索单个字符串,则效果很好: 但是我可以在下面的示例中有一个 or 语句吗? 问题答案: 在两个函数调用之间说 或使用函数使xpath不区分大小写
Jsoup将每个文本保存为textnode,包括元素之间的\r\n内容。我想要选择页面上的所有真实文本,并选择它的父文本以删除该父文本中的每一个文本。 我现在有这个: 它不会删除包含\n的所有textnodes,所以它会尝试删除正文,因为这是第一个包含textnodes的元素。 我只想选择所有带有文本的元素,并做element.parent().children().remove(); 也没有按照
问题内容: 我需要在网页上找到以下元素 我正在用Java为Selenium WebDriver编码。 需要该元素的确切CSS选择器才能与命令一起使用。 选择器还不够好,因为我必须根据不是链接的文本进行搜索,所以我不能使用命令。 问题答案: CSS不允许您执行基于文本的搜索。 xpath 是唯一的选择。
问题内容: 我正在寻找下表的CSS选择器: 是否有任何选择器来匹配所有包含“ male”的TD? 问题答案: 如果我正确阅读了说明书,否。 您可以匹配元素,元素中属性的名称以及元素中命名属性的值。不过,我看不到任何与内容匹配的元素。
问题内容: 我有个问题。我有这样的元素: id = someGenerated的元素Some:Same:0:name id = someGenerated的元素Some:Same:0:surname id = someGenerated的元素Some:Same:1:name id = someGenerated的元素Some:Same:1:surname 我需要CSS选择器来获取名称。问题是我不知