【发布时间】:2020-03-07 03:09:47
【问题描述】:
我有一个 C# Selenium WebDriver 脚本,它使用 AutoItX3Lib 来尝试执行 excel 文件的下载。
脚本在单击链接开始下载之前一直有效。
脚本的相关部分复制如下:
// Wait until "Contacts.xls" link displays
WebDriverWait wait4 = new WebDriverWait(driver, TimeSpan.FromSeconds(300));
wait4.Until(ExpectedConditions.ElementIsVisible(By.LinkText("contacts.xls")));
// Click "Contacts.xls"
driver.FindElement(By.LinkText("contacts.xls")).Click();
// Perform file download and saving using AutoIt
autoit.WinActivate("Opening contacts.xls","");
autoit.Send("{ALTDOWN}s{ALTUP}");
autoit.Sleep(3000);
autoit.Send("{ENTER}");
问题在于,在第一个发送命令 (autoit.Send("{ALTDOWN}s{ALTUP}");) 应该将 ALT + s 键发送到 Firefox 文件下载对话框窗口时,脚本会停止。但是,它不会将密钥发送到 Firefox 文件下载对话框窗口,而是将密钥发送到 Visual Studio(我用来创建和执行脚本的 IDE)。
提前致谢
【问题讨论】:
标签: c# selenium-webdriver autoit-c#-wrapper