Exemple #1
0
        /// <summary>
        /// Gets the web driver.
        /// </summary>
        /// <param name="contextManager">The object container.</param>
        /// <param name="options">The options.</param>
        /// <returns>The webdrivercontext object.</returns>
        public static WebDriverContext GetWebDriver(IContextManager contextManager, IWritableOptions <ConfigurationParameters> options)
        {
            var objectContainer = contextManager?.TestThreadContext.Get <IObjectContainer>("objectContainer");
            WebDriverContext webDriverContext = null;

            if (objectContainer.IsRegistered <WebDriverContext>())
            {
                webDriverContext = objectContainer.Resolve <WebDriverContext>();
            }

            if (options?.Value.BrowsersConfiguration.Browser == Browser.ChromeAndroid9)
            {
                AppiumLocalService = AndroidWebDriver.CreateAppiumLocalService();
                AppiumLocalService.Start();
            }

            if (webDriverContext?.WebDriver == null)
            {
                if (!objectContainer.IsRegistered <WebDriverContext>())
                {
                    objectContainer.RegisterTypeAs <WebDriverContext, WebDriverContext>();
                }
                objectContainer.Resolve <WebDriverContext>().CreateWebDriver();
                webDriverContext = objectContainer.Resolve <WebDriverContext>();
            }

            return(webDriverContext);
        }
        /// <summary>
        /// Gets the webdrivercontext.
        /// </summary>
        /// <param name="objectContainer">The configuration parameters object.</param>
        /// <param name="configurationParameters">The object container object.</param>
        /// <returns>The webDrvierContext object.</returns>
        public static WebDriverContext GetWebDriver(IObjectContainer objectContainer, ConfigurationParameters configurationParameters)
        {
            if (configurationParameters.BrowsersConfiguration.Browser == Browser.ChromeAndroid9)
            {
                AppiumLocalService = AndroidWebDriver.CreateAppiumLocalService();
                AppiumLocalService.Start();
            }

            if (configurationParameters.BrowsersConfiguration.ReuseBrowser)
            {
                var webDriver = new WebDriverContext(configurationParameters);

                objectContainer.RegisterInstanceAs <WebDriverContext>(webDriver);
                return(webDriver);
            }
            else
            {
                var webDriverContext = new WebDriverContext(configurationParameters);
                objectContainer.RegisterInstanceAs <WebDriverContext>(webDriverContext);
                return(webDriverContext);
            }
        }