У нас вы можете посмотреть бесплатно Selenium with C# 59 - File downloading and verifying in Chrome & Firefox without using AutoIt или скачать в максимальном доступном качестве, видео которое было загружено на ютуб. Для загрузки выберите вариант из формы ниже:
Если кнопки скачивания не
загрузились
НАЖМИТЕ ЗДЕСЬ или обновите страницу
Если возникают проблемы со скачиванием видео, пожалуйста напишите в поддержку по адресу внизу
страницы.
Спасибо за использование сервиса ClipSaver.ru
Agenda What is ChromeOptions class and AddUserProfilePreference() method? What is FirefoxOptions class and SetPreference() method? What is File class and Exists() method? What are FileInfo class and Name, FullName and Length properties? ChromeOptions class and AddUserProfilePreference() method ChromeOptions Class is used to manage options specific to chrome driver This class is available in OpenQA.Selenium.Chrome namespace public void AddUserProfilePreference (string preferenceName, object preferenceValue); Adds a preference for the user-specific profile or "user data directory." If the specified preference already exists, it will be overwritten. Code : ChromeOptions chromeOptions = new ChromeOptions(); chromeOptions.AddUserProfilePreference("download.default_directory", @"C:\Downloads"); FirefoxOptions class and SetPreference() method FirefoxOptions Class is used to manage options specific to firefox driver This class is available in OpenQA.Selenium.Firefox namespace public void SetPreference (string preferenceName, string preferenceValue); Sets a preference in the profile used by Firefox It is a overloaded method, preferenceValue parameter data type can be bool, int, long, double and string. Code : FirefoxOptions firefoxOptions = new FirefoxOptions(); firefoxOptions.SetPreference("browser.download.folderList", 2); firefoxOptions.SetPreference("browser.download.dir", @"C:\Downloads"); firefoxOptions.SetPreference("browser.helperApps.neverAsk.saveToDisk", "image/png"); File class and Exists() method File is a static class It has methods for the creation, copying, deletion, moving, and opening of a file public static bool Exists(string path); Exists() method returns true if the file exists in the provided path else returns false. It takes string(File Path) as a parameter Code : File.Exists(expectedFilePath); FileInfo class and Name, FullName and Length properties FileInfo is a sealed class It has methods and properties for the creation, copying, deletion, moving, and opening of a file public long Length { get; } Gets the size, in bytes, of the current file. public override string Name { get; } Gets the name of the file. Code : public virtual string FullName { get; } Gets the full path of the file(Includes drive and folder name). Possible Interview Questions What is a ChromeOptions class? What is AddUserProfilePreference() method? What is a FirefoxOptions class? What is SetPreference() method? How to download and verify a file in selenium? Code : [TestMethod] public void VerifyFileDownload() { string expectedFilePath = @"C:\Downloads\images.png"; bool fileExists = false; ChromeOptions chromeOptions = new ChromeOptions(); chromeOptions.AddUserProfilePreference("download.default_directory", @"C:\Downloads"); var driver = new ChromeDriver(chromeOptions); FirefoxOptions firefoxOptions = new FirefoxOptions(); firefoxOptions.SetPreference("browser.download.folderList", 2); firefoxOptions.SetPreference("browser.download.dir", @"C:\Downloads"); firefoxOptions.SetPreference("browser.helperApps.neverAsk.saveToDisk", "image/png"); // mimetype // "application/msword, application/binary, application/ris, text/csv, image/png, application/pdf, text/html, text/plain, application/zip, application/x-zip, application/x-zip-compressed, application/download, application/octet-stream " //var driver = new FirefoxDriver(firefoxOptions); driver.Manage().Window.Maximize(); driver.Url = "http://uitestpractice.com/Students/Wi..."; driver.FindElement(By.XPath("//button/a")).Click(); try { WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(60)); wait.Until greater than bool lessthan (x =greaterthan fileExists = File.Exists(expectedFilePath)); Console.WriteLine("File exists : " + fileExists); FileInfo fileInfo = new FileInfo(expectedFilePath); Console.WriteLine("File Length : "+fileInfo.Length); Console.WriteLine("File Name : "+fileInfo.Name); Console.WriteLine("File Full Name :"+fileInfo.FullName); Assert.AreEqual(1517, fileInfo.Length); Assert.AreEqual(fileInfo.Name, "images.png"); Assert.AreEqual(fileInfo.FullName, @"C:\Downloads\images.png"); } catch (Exception e) { Console.WriteLine(e.Message); } finally { if (File.Exists(expectedFilePath)) File.Delete(expectedFilePath); } driver.Quit(); }