public WebElement(IWebDriver webDriver, IWebElement webElement, By by)
 {
     _webDriver            = webDriver;
     _webElement           = webElement;
     _by                   = by;
     _elementFinderService = new ElementFinderService(webElement, _webDriver);
 }
예제 #2
0
        public override void Start(Browser browser)
        {
            switch (browser)
            {
            case Browser.Chrome:
                _webDriver = new ChromeDriver(Environment.CurrentDirectory);
                break;

            case Browser.Firefox:
                _webDriver = new FirefoxDriver(Environment.CurrentDirectory);
                break;

            case Browser.Edge:
                _webDriver = new EdgeDriver(Environment.CurrentDirectory);
                break;

            case Browser.Opera:
                _webDriver = new OperaDriver(Environment.CurrentDirectory);
                break;

            case Browser.Safari:
                _webDriver = new SafariDriver(Environment.CurrentDirectory);
                break;

            case Browser.InternetExplorer:
                _webDriver = new InternetExplorerDriver(Environment.CurrentDirectory);
                break;

            default:
                throw new ArgumentOutOfRangeException(nameof(browser), browser, null);
            }

            _webDriverWait = new WebDriverWait(_webDriver, TimeSpan.FromSeconds(30));

            _elementFinderService = new ElementFinderService(_webDriver, _webDriver);

            // 1st version with private methods
            ////_eventFiringWebDriver = new EventFiringWebDriver(_webDriver);
            ////_eventFiringWebDriver.Navigated += OnNavigated;
            ////_eventFiringWebDriver.ExceptionThrown += OnExceptionThrown;
            ////_eventFiringWebDriver.ElementClicked += OnElementClicked;

            InitializeEventFiringWebDriver();
        }