我必须点击“选择文件”按钮,它打开文件打开对话框。我需要检查文件是否存在。下面是代码
public static void UploadFile(IWebDriver driver, string photoLocation, string photoName)
{
driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(20);
IJavaScriptExecutor js = (IJavaScriptExecutor)driver;
js.ExecuteScript("window.scrollTo(0, document.body.scrollHeight)");
IWebElement element = driver.FindElement(By.XPath("//*[text() ='Choose File']"));
driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(30);
js.ExecuteScript("arguments[0].click();", element);
// using "HandleOpenDialog" to locate and upload file
HandleOpenDialog hndOpen = new HandleOpenDialog();
hndOpen.fileOpenDialog(photoLocation, photoName);
Thread.Sleep(3000);
}
如果该位置中存在该文件,则此代码可以正常工作。如果它不存在,我希望代码查找其他地方。测试卡在那里很长时间,测试失败。
有人能帮帮我吗?
1条答案
按热度按时间yftpprvb1#
首先,它看起来像HandleOpenDialog是您正在使用的一些内部库类(无法在搜索引擎中找到它)。
关于检查文件是否存在你可以通过使用File.Exists静态方法(https://learn.microsoft.com/en-us/dotnet/api/system.io.file.exists?view=net-7.0)来完成。