0

これは、セレン ユーザーにとっては簡単な質問かもしれません。

Name、TagName、Css などの要素を検索する際に使用できる属性をいくつか知っています。

しかし、その属性に基づいて要素を見つけるために、C# で "link=-----" のようなものを使用できますか??

画像は、Selenium IDE Recorder を使用しているときに取得する属性です

4

1 に答える 1

1

Selenium IDE に慣れていないので、ここでlink=601-800 students<a href='something'>601-800 students</a>.

次に、 を使用By.XPathしてテキスト付きのリンクを見つけるか、 を使用することBy.LinkTextもできますBy.PartialLinkText

driver.FindElement(By.XPath("//a[text()='601-800 students']"));
//driver.FindElement(By.LinkText("601-800 students"));

編集:

同じテキストのリンクがいくつかある場合は、固有の先祖を特定してみてください。

例えば

var headLink = driver.FindElement(By.XPath("//*[@id='header']//a[text()='601-800 students']"));
var mainLink = driver.FindElement(By.XPath("//*[@id='main']//a[text()='601-800 students']"));

それが不可能な場合は、それらをまとめてFindElements(これは ではないことに注意してくださいFindElement)、インデックスを作成します。

IList<IWebElement> links = driver.FindElements(By.XPath("//a[text()='601-800 students']"));
//IList<IWebElement> links = driver.FindElements(By.LinkText("601-800 students"));
var firstLink = links[0];
var secondLink = links[1];
foreach(IWebElement link in links) {
    // stuff to do with link
}
于 2013-07-10T04:49:33.430 に答える