/// <summary> /// Gets the app path for the application being tested /// </summary> /// <returns>The app path.</returns> private string GetAppPath() { var devicePlatform = AppiumConfig.GetDevicePlatform(); var appName = devicePlatform == DevicePlatform.Android ? AppiumConfig.GetAndroidRealApp() : AppiumConfig.GetiOSRealApp(); return(Path.Combine(AppiumConfig.GetAppPath(), appName)); }
public string SettingAppPath() { bool checkAndroid = deviceMap.Any(o => Regex.IsMatch(o.Value.ToString(), @"([Aa][Nn][Dd][Rr][Oo][Ii][Dd])")); bool checkMAC = deviceMap.Any(o => Regex.IsMatch(o.Value.ToString(), @"([Mm][Aa][Cc])")); bool checkReal = deviceMap.Any(o => Regex.IsMatch(o.Value.ToString(), @"([Rr][Ee][Aa][Ll])")); bool checkEmulator = deviceMap.Any(o => Regex.IsMatch(o.Value.ToString(), @"([Ee][Mm][Uu][Ll][Aa][Tt][Oo][Rr])")); if (checkAndroid && checkReal) { return(Path.Combine(AppiumConfig.GetAppPath(), AppiumConfig.GetAndroidRealApp())); } if (checkAndroid && checkEmulator) { return(Path.Combine(AppiumConfig.GetAppPath(), AppiumConfig.GetAndroidEmulatorApp())); } if (checkMAC && checkReal) { return(Path.Combine(AppiumConfig.GetAppPath(), AppiumConfig.GetiOSRealApp())); } if (checkMAC && checkEmulator) { return(Path.Combine(AppiumConfig.GetAppPath(), AppiumConfig.GetiOSEmulatorApp())); } throw new ArgumentException("Failed to set the App Path!"); }
public void GetCommandTimeout() { #region GetCommandTimeout TimeSpan initTimeout = AppiumConfig.GetCommandTimeout(); #endregion GetCommandTimeout Assert.AreEqual(122, initTimeout.TotalSeconds); }
private static ITestProvider CreateTestProvider() { var myTestProvider = AppiumConfig.GetTestProvider(); if (myTestProvider.ToString().ToUpper() == "KOBITON") { return(new KobitonTestProvider()); } return(new GridProvider()); }
/// <summary> /// Sets capabilities for testing the iOS Driver creation /// </summary> /// <returns>iOS instance of the Appium Driver</returns> protected override AppiumDriver <IWebElement> GetMobileDevice() { AppiumOptions options = new AppiumOptions(); options.AddAdditionalCapability("deviceName", "iPhone 8 Simulator"); options.AddAdditionalCapability("deviceOrientation", "portrait"); options.AddAdditionalCapability("platformVersion", "12.2"); options.AddAdditionalCapability("platformName", "iOS"); options.AddAdditionalCapability("browserName", "Safari"); options.AddAdditionalCapability("username", "Partner_Magenic"); options.AddAdditionalCapability("accessKey", "7e0592a4-16de-4c6b-9b87-ee61aa43ceac"); return(new IOSDriver <IWebElement>(AppiumConfig.GetMobileHubUrl(), options, AppiumConfig.GetCommandTimeout())); }
/// <summary> /// Sets capabilities for testing the iOS Driver creation /// </summary> /// <returns>iOS instance of the Appium Driver</returns> protected override AppiumDriver <IWebElement> GetMobileDevice() { AppiumOptions options = new AppiumOptions(); options.AddAdditionalCapability("deviceName", "iPhone 8 Simulator"); options.AddAdditionalCapability("deviceOrientation", "portrait"); options.AddAdditionalCapability("platformVersion", "12.2"); options.AddAdditionalCapability("platformName", "iOS"); options.AddAdditionalCapability("browserName", "Safari"); options.AddAdditionalCapability("username", Config.GetValueForSection(ConfigSection.AppiumCapsMaqs, "userName")); options.AddAdditionalCapability("accessKey", Config.GetValueForSection(ConfigSection.AppiumCapsMaqs, "accessKey")); return(new IOSDriver <IWebElement>(AppiumConfig.GetMobileHubUrl(), options, AppiumConfig.GetCommandTimeout())); }
/// <summary> /// Sets capabilities for testing the iOS Driver creation /// </summary> /// <returns>iOS instance of the Appium Driver</returns> protected override AppiumDriver GetMobileDevice() { AppiumOptions options = new AppiumOptions { DeviceName = "iPhone 13 Simulator", PlatformName = "iOS", PlatformVersion = "15.0", BrowserName = "Safari" }; var sauceOptions = AppiumConfig.GetCapabilitiesAsObjects(); // Use Appium 1.22 for running iOS tests (sauceOptions["sauce:options"] as Dictionary <string, object>)["appiumVersion"] = "1.22.0"; options.SetMobileOptions(sauceOptions); return(AppiumDriverFactory.GetIOSDriver(AppiumConfig.GetMobileHubUrl(), options, AppiumConfig.GetMobileCommandTimeout())); }
/// <summary> /// Disposing drivers for test cleanup /// </summary> /// <param name="methodInfo">Method Information</param> public void DisposeDrivers(MethodInfo methodInfo) { try { // Parallel loop to dispose of all the drivers at once speeding up cleanup Parallel.ForEach(MobileDrivers, device => { if (device.AppiumDriver.Capabilities.GetCapability("platformName").ToString().ToLower().Equals("ios")) { device.AppiumDriver.CloseApp(); device.AppiumDriver.RemoveApp(AppiumConfig.GetAppId()); } device.DisposeAppiumDriver(); }); } catch (Exception e) { Console.WriteLine("IF YOU SEE ME YOU ARE NOT CLEANING UP DEVICES PROPERLY."); Console.WriteLine(e); } MobileDriverFactory.Que.CheckinDevice(methodInfo.Name); }
/// <summary> /// Creates DesiredCababilities object based on Device information. /// </summary> /// <returns>The desired capabilities.</returns> /// <param name="device">Device.</param> /// <param name="methodInfo"></param> private DesiredCapabilities CreateDesiredCapabilities(Device device, MethodInfo methodInfo) { DesiredCapabilities capabilities = new DesiredCapabilities(); //capabilities.SetCapability("username", AppiumConfig.GetKobitonUserName()); //capabilities.SetCapability("accessKey", AppiumConfig.GetKobitonAccessKey()); //capabilities.SetCapability("newCommandTimeout", "400"); ////capabilities.SetCapability("appWaitActivity", "md5a28fba6e093d468832e1157c64fa578d.MainActivity"); //capabilities.SetCapability("unicodeKeyboard", true); //capabilities.SetCapability("resetKeyboard", true); //capabilities.SetCapability("browserName", "Kobiton TestProvider"); //capabilities.SetCapability("browserTimeout", 120); //capabilities.SetCapability("app", $"kobiton-store:{RunAppId}"); //var className = methodInfo.ReflectedType.ToString().Split('.').Last(); //var buildName = Environment.GetEnvironmentVariable("JOB_BASE_NAME"); //capabilities.SetCapability("sessionName", $" {buildName} - {className} - {methodInfo.Name}"); //capabilities.SetCapability("sessionDescription", "Automation Run"); //capabilities.SetCapability("deviceOrientation", "portrait"); //capabilities.SetCapability("captureScreenshots", true); //capabilities.SetCapability("deviceGroup", "KOBITON"); //capabilities.SetCapability("deviceName", "i"); //capabilities.SetCapability("platformVersion", "11."); //capabilities.SetCapability("version", "11."); capabilities.SetCapability("username", AppiumConfig.GetKobitonUserName()); capabilities.SetCapability("accessKey", AppiumConfig.GetKobitonAccessKey()); capabilities.SetCapability("newCommandTimeout", "400"); //capabilities.SetCapability("appWaitActivity", "md5a28fba6e093d468832e1157c64fa578d.MainActivity"); capabilities.SetCapability("unicodeKeyboard", true); capabilities.SetCapability("resetKeyboard", true); capabilities.SetCapability("browserName", "Kobiton TestProvider"); capabilities.SetCapability("browserTimeout", 120); capabilities.SetCapability("app", $"kobiton-store:{RunAppId}"); var className = methodInfo.ReflectedType.ToString().Split('.').Last(); var buildName = Environment.GetEnvironmentVariable("JOB_BASE_NAME"); capabilities.SetCapability("sessionName", $" {buildName} - {className} - {methodInfo.Name}"); capabilities.SetCapability("sessionDescription", "Automation Run"); capabilities.SetCapability("deviceOrientation", "portrait"); capabilities.SetCapability("captureScreenshots", true); capabilities.SetCapability("deviceGroup", "KOBITON"); capabilities.SetCapability("deviceName", "Galaxy"); //capabilities.SetCapability("platformVersion", "11."); //capabilities.SetCapability("version", "11."); //var devicePlatform = AppiumConfig.GetDevicePlatform(); //if (devicePlatform == DevicePlatform.IOS) //{ // // HACK: converting iOS to MAC, watch out for when Appium switches back to iOS // capabilities.SetCapability("platformName", "MAC"); //} //else //{ capabilities.SetCapability("platformName", device.PlatformName); //} return(capabilities); }
public void GetMobileHubUrlTest() { Assert.AreEqual("http://ondemand.saucelabs.com/wd/hub", AppiumConfig.GetMobileHubUrl().AbsoluteUri); }
public void GetDeviceNameTest() { Assert.AreEqual("Android GoogleAPI Emulator", AppiumConfig.GetDeviceName()); }
public void GetPlatformVersionTest() { Assert.AreEqual("6.0", AppiumConfig.GetPlatformVersion()); }
public void GetPlatformNameTest() { Assert.AreEqual("Android", AppiumConfig.GetPlatformName()); }
public void GetCommandTimeout() { TimeSpan initTimeout = AppiumConfig.GetMobileCommandTimeout(); Assert.AreEqual(200, initTimeout.TotalSeconds); }
/// <summary> /// Initializes a new instance of the <see cref="AppiumWait"/> class. /// </summary> /// <param name="driver">IWebDriver instance</param> public AppiumWait(IWebDriver driver) : this(driver, AppiumConfig.GetWaitValue()) { }