public static IServiceProvider GetServiceProvider(bool headless) { // Force local Browser running for local file IWebDriverConfiguration driverConfig = WebDriverConfigurationBuilder.Start() .WithHeadless(headless) .WithBrowser(Browser.Firefox) .WithWindowSize(WindowSize.Hd) .Build(); IWebDriverManager driverManager = ServiceCollectionFactory.GetDefaultServiceCollection(true, driverConfig) .BuildServiceProvider() .GetRequiredService <IWebDriverManager>(); IServiceCollection serviceCollection = new ServiceCollection(); serviceCollection.AddSingleton <IWebDriverManager>(driverManager); serviceCollection.AddSingleton <IWebDriver>(driverManager.Get()); serviceCollection.Scan(scan => scan .FromAssemblyOf <PageTests>() .AddClasses() .UsingRegistrationStrategy(RegistrationStrategy.Skip) .AsSelf() .WithSingletonLifetime()); return(serviceCollection.BuildServiceProvider()); }
public PRBot(IWebDriverManager webdriver) { web = webdriver; web.Action += Web_Action; web.ActionError += Web_ActionError; Work = false; }
public void Prepare() { ILoggerRepository logRepository = LogManager.GetRepository(Assembly.GetEntryAssembly()); XmlConfigurator.Configure(logRepository, new FileInfo(Path.Combine(TestContext.CurrentContext.TestDirectory, "log4net.config"))); // Use the in-built IoC functionality IServiceCollection services = ServiceCollectionFactory.GetDefaultServiceCollection((IWebDriverConfiguration)null); services.Replace(ServiceDescriptor.Singleton <IWebDriverFactory, FakeWebDriverFactory>()); IServiceProvider provider = services.BuildServiceProvider(); // Or use Scrutor //IServiceProvider provider = DependencyInjector.GetScannedServiceProvider(); // or use the original IoC container code //IServiceProvider provider = DependencyInjector.GetDefinedServiceProvider(); WebDriverManager = provider.GetService <IWebDriverManager>(); }
public PageObjectFactory(IWebDriverManager webDriverManager) { _webDriverManager = webDriverManager; }
public SecureAreaPage(IWebDriverManager webDriverManager) : base(webDriverManager) { }
protected BasePage(IWebDriverManager webDriverManager) { WebDriverManager = webDriverManager; PageUrl = WebDriver.Url; }
internal LoginPage(IWebDriverManager webDriverManager) : base(webDriverManager) { }