예제 #1
0
        public Browser(BrowserType browser, BrowserSize windowSize)
        {
            switch (browser)
            {
            case BrowserType.Firefox:
                webDriver = new FirefoxDriver();
                break;

            case BrowserType.Chrome:
                webDriver = new ChromeDriver();
                break;

            case BrowserType.IE:
                webDriver = new OpenQA.Selenium.IE.InternetExplorerDriver();
                break;

            default:
                throw new DriverServiceNotFoundException($"{browser.ToString()} not supported in this testing suite");
            }

            if (windowSize == BrowserSize.Maximize)
            {
                webDriver.Manage().Window.Maximize();
            }
            else
            {
                //browser window size format:  whatevername_widthxheight
                //example Desktop_1524x768
                string[] browserSize = windowSize.ToString().Split('_')[1].Split('x');
                webDriver.Manage().Window.Size = new System.Drawing.Size(int.Parse(browserSize[0]), int.Parse(browserSize[1]));
            }
        }
예제 #2
0
        public void BrowserSize_DefaultValues()
        {
            var sut = new BrowserSize();

            sut.X.Should().Be(1920);
            sut.Y.Should().Be(1080);
        }
예제 #3
0
        public void BrowserSize_Parse_Returns_Resolution(string param, int x, int y)
        {
            var result = BrowserSize.Parse(param);

            result.X.Should().Be(x);
            result.Y.Should().Be(y);
        }
예제 #4
0
        public void BrowserSize_Parse_thorws_InvalidOperationException(string param)
        {
            Action act = () =>
            {
                BrowserSize.Parse(param);
            };

            act.Should().Throw <InvalidOperationException>();
        }
예제 #5
0
        public void BrowserSize_Parse_thorws_FormatException(string param)
        {
            Action act = () =>
            {
                BrowserSize.Parse(param);
            };

            act.Should().Throw <FormatException>();
        }
예제 #6
0
        public void BrowserSize_Parse_thorws_ArgumentNullException(string param)
        {
            Action act = () =>
            {
                BrowserSize.Parse(param);
            };

            act.Should().Throw <ArgumentNullException>();
        }
예제 #7
0
        public void BrowserSize_ToSize_Retunrs_Size()
        {
            var sut = new BrowserSize {
                X = 99, Y = 88
            };

            var result = sut.ToSize();

            result.Should().BeOfType <System.Drawing.Size>();
            result.Height.Should().Be(sut.Y);
            result.Width.Should().Be(sut.X);
        }
예제 #8
0
        public static void SetBrowserSize(BrowserSize size)
        {
            switch (size)
            {
            case BrowserSize.Desktop:
                driver.Manage().Window.Maximize();
                break;

            case BrowserSize.Tablet:
                driver.Manage().Window.Size = new Size(768, 800);
                break;

            case BrowserSize.Phone:
                driver.Manage().Window.Size = new Size(320, 480);
                break;
            }
        }
예제 #9
0
        //Resizes the browser, called after browser is opened
        private void ResizeBrowser(BrowserSize size)
        {
            Trace.WriteLine(string.Format("Resizing browser to dimensions of {0} view", size));
            switch (size)
            {
            case BrowserSize.MOBILE:
                this.Driver.Manage().Window.Size = new Size(360, 640);
                break;

            case BrowserSize.TABLET:
                this.Driver.Manage().Window.Size = new Size(1024, 768);
                break;

            case BrowserSize.DESKTOP:
                this.Driver.Manage().Window.Size = new Size(1366, 768);
                break;

            default:
                throw new Exception("Unknown browser size");
            }
            this.Driver.Navigate().GoToUrl(this.Config.Url);
        }
예제 #10
0
        public void BrowserSize_Parse_Returns_BrowserSizeMaximized(string param)
        {
            var result = BrowserSize.Parse(param);

            result.Should().BeOfType <BrowserSizeMaximized>();
        }