/// <summary> /// Enters path to .jpg or .png image in "/Testing files" directory /// This directory must be created manualy and some images must be present there /// </summary> /// <param name="element">Uploead file/image button</param> public static void EnterRandomImage(this IWebElement element) { var image = Path.GetFullPath(Directory.GetFiles(@"Testing Files").Where(r => r.Contains(".jpg") || r.Contains(".png")).OrderBy(i => SafeRandom.Next()).First()); element.SendKeys(image); }
/// <summary> /// Selects random option in select box by index /// </summary> /// <param name="element">Select element</param> public static void SelectRandomElement(this IWebElement element) { new SelectElement(element).SelectByIndex(SafeRandom.Next(1, element.FindElements(By.TagName("option")).Count)); }
/// <summary> /// Selects random element in selectbox by index within limit in selectbox /// </summary> /// <param name="element">Select element</param> /// <param name="min">Minimum index of element</param> /// <param name="max">Maximum index of element</param> public static void SelectRandomElement(this IWebElement element, int min, int max) { new SelectElement(element).SelectByIndex(SafeRandom.Next(min, max)); }
/// <summary> /// Clicks on random element in list with minimum and maximum position in list /// </summary> /// <param name="elements">Any HTML elements</param> /// <param name="min">Minimum position of element in list</param> /// <param name="max">Maximum position of element in list</param> public static void ClickRandomElement(this IList <IWebElement> elements, int max, int min = 0) { IWebElement element = elements[SafeRandom.Next(min, max)]; element.ClickElement(); }