使用 C# 如何使用 Selenium WebDriver 滚动到元素?
可以使用 C# 中的 Selenium webdriver 滚动到某个元素。借助JavaScript 执行程序可以实现此操作。Selenium 可以利用ExecuteScript方法运行 JavaScript 命令。
JavaScript 中的scrollIntoView方法用于执行滚动操作,并将true值作为参数传递给该方法。然后将其传递给 ExecuteScript 方法。
语法
var e = driver.FindElement(By.XPath("//*[text()='Careers']")); ((IJavaScriptExecutor)driver) .ExecuteScript("arguments[0].scrollIntoView(true);", e);
在实现中,我们将使用 NUnit 框架。
示例
using NUnit.Framework; using OpenQA.Selenium; using OpenQA.Selenium.Firefox; using System; namespace NUnitTestProject1{ public class Tests{ String u = "https://tutorialspoint.com/index.htm"; IWebDriver d; [SetUp] public void Setup(){ //creating object of FirefoxDriver d = new FirefoxDriver(); } [Test] public void Test1(){ //launching URL d.Navigate().GoToUrl(u); //identify element var e = d.FindElement(By.XPath("//*[text()='Careers']")); // JavaScript Executor to scroll to element ((IJavaScriptExecutor)d) .ExecuteScript("arguments[0].scrollIntoView(true);", e); Console.WriteLine(e.Text); } [TearDown] public void close_Browser(){ d.Quit(); } } }
输出
单击全部运行测试按钮 -
单击为此结果打开其他输出链接 -
我们应该会看到测试结果和标准输出。
广告