Wählen Sie mit Selenium Webdriver ein Element anhand des darin enthaltenen Texts aus

Ich habe gerade mit Selenium Webdriver angefangen und bin sofort auf ein Problem gestoßen, das die Schaltflächen betrifft, die ich auswählen / anklicken möchte. Alle haben keine IDs und teilen dieselbe Klasse.

Ich frage mich also, wie ich diese anhand des eindeutigen Texts auswähle, den sie enthalten.

Ich denke möglicherweise mit CSS-Auswahl vielleicht, aber ich bin mir nicht sicher, wie ich es auch sagen soll, nach spezifischem Text zu suchen, um das Element auszuwählen.

Alles was ich derzeit habe ist:

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();
        }

    }
}

Bisher sehr einfach.

Wo ich den CssSelector habe, weiß ich nicht, ob es überhaupt möglich ist, "a" mit dem Text "xyz" auszuwählen.

Ich habe versucht, nach Wegen zu suchen, kann aber nichts finden, obwohl ich der Meinung bin, dass dies ein Problem sein muss, das zuvor angesprochen wurde, danke.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage