コード例 #1
0
        public void ConfigureDriver(TestContext context, ScenarioContext scenario)
        {
            context.VideoWebConfig.TestConfig.TargetBrowser        = DriverManager.GetTargetBrowser(NUnit.Framework.TestContext.Parameters["TargetBrowser"]);
            context.VideoWebConfig.TestConfig.TargetBrowserVersion = NUnit.Framework.TestContext.Parameters["TargetBrowserVersion"];
            context.VideoWebConfig.TestConfig.TargetDevice         = DriverManager.GetTargetDevice(NUnit.Framework.TestContext.Parameters["TargetDevice"]);
            context.VideoWebConfig.TestConfig.TargetDeviceName     = NUnit.Framework.TestContext.Parameters["TargetDeviceName"];
            context.VideoWebConfig.TestConfig.TargetOS             = DriverManager.GetTargetOS(NUnit.Framework.TestContext.Parameters["TargetOS"]);

            var driverOptions = new DriverOptions()
            {
                TargetBrowser        = context.VideoWebConfig.TestConfig.TargetBrowser,
                TargetBrowserVersion = context.VideoWebConfig.TestConfig.TargetBrowserVersion,
                TargetDevice         = context.VideoWebConfig.TestConfig.TargetDevice,
                TargetOS             = context.VideoWebConfig.TestConfig.TargetOS,
                HeadlessMode         = context.ZapConfiguration.HeadlessMode
            };

            var sauceLabsOptions = new SauceLabsOptions()
            {
                EnableLogging = false,
                Name          = scenario.ScenarioInfo.Title
            };

            OpenQA.Selenium.Proxy proxy = null;

            if (Zap.SetupProxy)
            {
                proxy = new OpenQA.Selenium.Proxy();
                var proxySetting = $"{context.ZapConfiguration.ApiAddress}:{context.ZapConfiguration.ApiPort}";
                proxy.HttpProxy = proxySetting;
                proxy.SslProxy  = proxySetting;
            }

            context.Driver = new DriverSetup(context.VideoWebConfig.SauceLabsConfiguration, driverOptions, sauceLabsOptions, proxy);
        }
コード例 #2
0
 public DriverSetup(SauceLabsSettingsConfig sauceLabsSettings, DriverOptions driverOptions, SauceLabsOptions sauceLabsOptions, Proxy proxy = null)
 {
     _sauceLabsSettings = sauceLabsSettings;
     _driverOptions     = driverOptions;
     SauceLabsOptions   = sauceLabsOptions;
     _proxy             = proxy;
 }
コード例 #3
0
 private static void GeneralSettingsAreSet(SauceLabsOptions options)
 {
     options.CommandTimeoutInSeconds.Should().BeGreaterThan(0);
     options.IdleTimeoutInSeconds.Should().BeGreaterThan(0);
     options.MaxDurationInSeconds.Should().BeGreaterThan(0);
     options.Name.Should().NotBeNullOrEmpty();
     options.Timezone.Should().NotBeNullOrEmpty();
 }
コード例 #4
0
        public static void ValidateSauceLabs(TargetDevice targetDevice, SauceLabsOptions options)
        {
            var deviceTypes = new Dictionary <TargetDevice, IDriverValidator>
            {
                { TargetDevice.Desktop, new DesktopValidator() },
                { TargetDevice.Tablet, new TabletValidator() },
                { TargetDevice.Mobile, new MobileValidator() }
            };

            deviceTypes[targetDevice].ValidateSauceLabsOptions(options);
        }
コード例 #5
0
        public void ConfigureDriver(TestContext context, ScenarioContext scenario)
        {
            context.Config.TestSettings.TargetBrowser        = DriverManager.GetTargetBrowser(NUnit.Framework.TestContext.Parameters["TargetBrowser"]);
            context.Config.TestSettings.TargetBrowserVersion = NUnit.Framework.TestContext.Parameters["TargetBrowserVersion"];
            context.Config.TestSettings.TargetDevice         = DriverManager.GetTargetDevice(NUnit.Framework.TestContext.Parameters["TargetDevice"]);
            context.Config.TestSettings.TargetDeviceName     = NUnit.Framework.TestContext.Parameters["TargetDeviceName"];
            context.Config.TestSettings.TargetOS             = DriverManager.GetTargetOS(NUnit.Framework.TestContext.Parameters["TargetOS"]);

            var driverOptions = new DriverOptions()
            {
                TargetBrowser        = context.Config.TestSettings.TargetBrowser,
                TargetBrowserVersion = context.Config.TestSettings.TargetBrowserVersion,
                TargetDevice         = context.Config.TestSettings.TargetDevice,
                TargetOS             = context.Config.TestSettings.TargetOS
            };

            var sauceLabsOptions = new SauceLabsOptions()
            {
                EnableLogging = EnableLogging(context.Config.TestSettings.TargetOS, context.Config.TestSettings.TargetBrowser, scenario.ScenarioInfo),
                Name          = scenario.ScenarioInfo.Title
            };

            context.Driver = new DriverSetup(context.Config.SauceLabsConfiguration, driverOptions, sauceLabsOptions);
        }
コード例 #6
0
 internal override void ValidateSauceLabsOptions(SauceLabsOptions options)
 {
     GeneralSettingsAreSet(options);
     options.AppiumVersion.Should().NotBeNullOrEmpty();
 }
コード例 #7
0
 internal abstract void ValidateSauceLabsOptions(SauceLabsOptions options);