/// <summary> /// Set web app default options /// </summary> /// <param name="browserType">target browser type supported types(chrome, safari only)</param> /// <param name="options">existing appium options object to add capabilties</param> private void SetupWebAppOptions(string browserType, AppiumOptions options) { options.SetLoggingPreference(LogType.Browser, LogLevel.All); switch (browserType) { case "Safari": if (!isHybridApp) { options.AddAdditionalCapability(MobileCapabilityType.BrowserName, MobileBrowserType.Safari); } break; case "Chrome": if (!isHybridApp) { options.AddAdditionalCapability(MobileCapabilityType.BrowserName, MobileBrowserType.Chrome); } //Critical for extracting logs from chromium based browsers. Disable w3c to allow for JSONWP commands to be executed options.AddAdditionalCapability("appium:chromeOptions", new Dictionary <string, object>() { { "w3c", false } }); break; default: if (!isHybridApp && !isNativeApp) //This is a web app and browser is required { throw new InvalidCapabilityException($"Browser type [{this.context.RS_BrowserName}] is not supported. Supported types [chrome, safari]"); } break; } }