Esempio n. 1
0
        public IWebDriver Frame(int frameIndex)
        {
            logger_.Log(TraceLevel.Debug, Stage.General, StageType.Called, new { frameIndex });
            // Finding the target element so and reporting it using onWillSwitch.
            ReadOnlyCollection <IWebElement> frames = driver_.FindElements(By.CssSelector("frame, iframe"));

            if (frameIndex >= frames.Count)
            {
                throw new NoSuchFrameException(string.Format("Frame index [{0}] is invalid!", frameIndex));
            }
            IWebElement targetFrame = frames[frameIndex];

            WillSwitchToFrame_(targetFrame);
            return(driver_);
        }
        public IWebDriver Frame(int frameIndex)
        {
            logger_.Verbose("({0})", frameIndex);
            // Finding the target element so and reporting it using onWillSwitch.
            logger_.Verbose("Getting frames list...");
            ReadOnlyCollection <IWebElement> frames = driver_.FindElements(By.CssSelector("frame, iframe"));

            if (frameIndex >= frames.Count)
            {
                throw new NoSuchFrameException(string.Format("Frame index [{0}] is invalid!", frameIndex));
            }
            logger_.Debug("Done! getting the specific frame...");
            IWebElement targetFrame = frames[frameIndex];

            logger_.Debug("Done! Making preparations...");
            WillSwitchToFrame_(targetFrame);
            logger_.Debug("Done! Switching to frame...");
            targetLocator_.Frame(frameIndex);
            logger_.Verbose("Done!");
            return(driver_);
        }