Selenium WebDriver c# 是否可以附加要上传的文件
本文关键字:文件 WebDriver 是否 Selenium | 更新日期: 2023-09-27 18:37:19
我想附加一个文件进行上传。测试的一部分我正在尝试以下内容,但它不起作用
1) Enter some details into the input fields
2) Click Browse on the Web site
3) Enter a file path in the windows popup that appears
4) Click Open on the windows popup
5) Click Apply on the Web site
Driver.FindElement(By.Id("Name")).SendKeys(name);
Driver.FindElement(By.Id("EmailAddress")).SendKeys(email);
Driver.FindElement(By.Id("TelephoneNumber")).SendKeys(telephone.ToString());
Driver.FindElement(By.Name("file")).Click();
Driver.SwitchTo().ActiveElement().SendKeys("/home/likewise-open/GLOBAL/123/Documents/filename.txt");
Driver.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(5));
Driver.FindElement(By.Id("convertButton"));
由于 WebDriver 只能处理基于 Web 的交互,而不能处理基于 Windows 的交互,您将需要AutoIT实用程序才能上传或下载并将其集成到Selenium脚本中。AutoIT是一个免费工具。
试试这段代码
Driver.FindElement(By.Name("yourUploadFileTextBox")).SendKeys("/home/likewise-open/GLOBAL/123/Documents/filename.txt");
Driver.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(5));
Driver.FindElement(By.Id("convertButton"));
它会起作用。无需单击浏览按钮。只需在出现文件路径的文本框中发送密钥。