我已将 Selenium WebDriver 添加到 Powershell 并创建 WebDriver 实例:
Add-Type -path C:\Windows\net40\WebDriver.dll
$driver = New-Object OpenQA.Selenium.Firefox.FirefoxDriver
$driver.Url = "https://www.google.com"
现在我想找到输入字段:
$singleRecord = ($driver.FindElementByCssSelector("input.gbqfif"))
我找到了几个如何在 C# 中“测试元素是否存在”的示例:
这里也有指南:
IWebDriver driver = new FirefoxDriver();
driver.Url = "http://somedomain/url_that_delays_loading";
WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(10));
IWebElement myDynamicElement = wait.Until<IWebElement>((d) =>
{
return d.FindElement(By.Id("someDynamicElement"));
});
但我无法在 Powershell 中创建类似的东西,而且几乎所有测试都失败了,因为页面加载元素需要时间。