Exemple #1
0
        public TPage NavigateTo <TPage>(int timeout = 0) where TPage : BasePageObject, new()
        {
            var pageInstance = BasePageObject.CreateInstance <TPage>();

            if (pageInstance.Url.ToLowerInvariant().StartsWith("http"))
            {
                var url = pageInstance.Url.TrimEnd('/') + pageInstance.QueryString;
                _driver.Navigate().GoToUrl(url);
            }
            else
            {
                var url = $"{pageInstance.BaseUrl.TrimEnd('/')}{GetAdaptedToEnvironmentUrl(pageInstance.Url)}{pageInstance.QueryString}";

                _driver.Navigate().GoToUrl(url);
            }

            if (timeout > 0)
            {
                Thread.Sleep(timeout * 1000);
            }

            WaitUntilDocumentIsReady();
            var page = BasePageObject.GetInstance <TPage>(_driver, pageInstance.DefaultTitle);

            return(page);
        }