public void LoginToSite() { var doc = XDocument.Load(DataFileLocation); XElement settings = doc.Document.Element("Tests").Element("settings"); _driver = StartBrowser(settings.Attribute("browser").Value); _baseUrl = settings.Attribute("baseURL").Value; _siteAlias = settings.Attribute("siteAlias").Value; _siteName = settings.Attribute("siteName").Value; _pageName = settings.Attribute("pageName").Value; _userName = settings.Attribute("userName").Value; Trace.WriteLine(BasePage.PreconditionsKeyWord); var installerPage = new InstallerPage(_driver); installerPage.OpenUsingUrl(_baseUrl); installerPage.WelcomeScreen(); LoginPage loginPage = new LoginPage(_driver); loginPage.WaitForElement(By.XPath(ControlPanelIDs.LoginLink), 20).WaitTillVisible(20).Click(); loginPage.WaitAndSwitchToFrame(30); loginPage.DoLoginUsingLoginLink("host", "dnnhost"); loginPage.WaitAndSwitchToWindow(30); AdminSiteSettingsPage adminSiteSettingsPage = new AdminSiteSettingsPage(_driver); adminSiteSettingsPage.OpenUsingButtons(_baseUrl); adminSiteSettingsPage.DisablePopups(); }
public void RunBeforeBVTTests() { Trace.WriteLine(BasePage.TraceLevelComposite + "BVT Setup"); XDocument doc = XDocument.Load(DataFileLocation); XElement settings = doc.Document.Element("Tests").Element("settings"); string testName = settings.Attribute("name").Value; string installerLanguage = settings.Attribute("InstallerLanguage").Value; IWebDriver driver = TestBase.StartDriver(settings.Attribute("browser").Value); string baseUrl = settings.Attribute("baseURL").Value; bool dummyProvider = settings.Attribute("runWithDummyCachingProvider") .Value.Equals("yes", StringComparison.InvariantCultureIgnoreCase); Trace.WriteLine(BasePage.RunningTestKeyWord + "'" + testName + "'"); Trace.WriteLine(BasePage.PreconditionsKeyWord); var installerPage = new InstallerPage(driver); installerPage.OpenUsingUrl(baseUrl); installerPage.SetInstallerLanguage(installerLanguage); installerPage.SetDictionary(installerLanguage); installerPage.FillAccountInfo(settings); installerPage.ClickOnContinueButton(); installerPage.WaitForInstallationProcessToFinish(); installerPage.ClickOnVisitWebsiteButton(); installerPage.WelcomeScreen(); var adminSiteSettingsPage = new AdminSiteSettingsPage(driver); adminSiteSettingsPage.OpenUsingButtons(baseUrl); adminSiteSettingsPage.DisablePopups(); if (dummyProvider) { var hostExtensionsPage = new HostExtensionsPage(driver); hostExtensionsPage.OpenUsingButtons(baseUrl); hostExtensionsPage.InstallExtension(@"Drivers\" + "DummySerializationCachingProvider_01.00.01_Install.zip"); } driver.Quit(); }
public void RunBeforeBVTTests() { Trace.WriteLine(BasePage.TraceLevelComposite + "BVT Setup"); XDocument doc = XDocument.Load(DataFileLocation); XElement settings = doc.Document.Element("Tests").Element("settings"); string testName = settings.Attribute("name").Value; string installerLanguage = settings.Attribute("InstallerLanguage").Value; IWebDriver driver = TestBase.StartDriver(settings.Attribute("browser").Value); string baseUrl = settings.Attribute("baseURL").Value; Trace.WriteLine(BasePage.RunningTestKeyWord + "'" + testName + "'"); Trace.WriteLine(BasePage.PreconditionsKeyWord); var installerPage = new InstallerPage(driver); installerPage.OpenUsingUrl(baseUrl); installerPage.SetInstallerLanguage(installerLanguage); installerPage.SetDictionary(installerLanguage); installerPage.FillAccountInfo(settings); installerPage.ClickOnContinueButton(); installerPage.WaitForInstallationProcessToFinish(); installerPage.ClickOnVisitWebsiteButton(); installerPage.WelcomeScreen(); var adminSiteSettingsPage = new AdminSiteSettingsPage(driver); adminSiteSettingsPage.OpenUsingButtons(baseUrl); adminSiteSettingsPage.DisablePopups(); driver.Quit(); }
private void RunInstallerLogTest(XElement settings) { string testName = settings.Attribute("name").Value; string baseUrl = settings.Attribute("baseURL").Value; string browser = settings.Attribute("browser").Value; string installerLanguage = settings.Attribute("InstallerLanguage").Value; string language = settings.Attribute("Language").Value; IWebDriver driver = StartBrowser(browser); Trace.WriteLine("Running TEST: '" + testName + "'"); InstallerPage installerPage = new InstallerPage(driver); installerPage.OpenUsingUrl(baseUrl); installerPage.SetInstallerLanguage(installerLanguage); installerPage.SetDictionary(installerLanguage); installerPage.OpenUsingUrl(baseUrl); installerPage.FillAccountInfo(settings); installerPage.SetWebSiteLanguage(language); installerPage.ClickOnContinueButton(); installerPage.WaitForInstallationProcessToFinish(); installerPage.ClickOnSeeLogsButton(); installerPage.WaitForLogContainer(); Trace.WriteLine("Assert Log records: "); StringAssert.DoesNotContain("ERROR", installerPage.FindElement(By.Id(InstallerPage.InstallerLogContainer)).Text, "PLZ check log file, it contains error messages"); installerPage.ClickOnVisitWebsiteButton(); installerPage.WelcomeScreen(); Trace.WriteLine("Assert Log files do not contain ERRORs "); HostSettingsPage hostSettingsPage = new HostSettingsPage(driver); hostSettingsPage.SetDictionary(language); hostSettingsPage.OpenUsingButtons(baseUrl); hostSettingsPage.WaitAndClick(By.XPath(HostSettingsPage.LogsTab)); SlidingSelect.SelectByValue(driver, By.XPath("//a[contains(@id, '" + HostSettingsPage.LogFilesDropDownArrow + "')]"), By.XPath(HostSettingsPage.LogFilesDropDownList), HostSettingsPage.OptionOne, SlidingSelect.SelectByValueType.Contains); hostSettingsPage.WaitForElement(By.XPath(HostSettingsPage.LogContent), 30); StringAssert.Contains(hostSettingsPage.Translate("Successfull Log"), hostSettingsPage.FindElement(By.XPath(HostSettingsPage.LogContent)).Text, "The Log File is not empty"); SlidingSelect.SelectByValue(driver, By.XPath("//a[contains(@id, '" + HostSettingsPage.LogFilesDropDownArrow + "')]"), By.XPath(HostSettingsPage.LogFilesDropDownList), HostSettingsPage.OptionTwo, SlidingSelect.SelectByValueType.Contains); hostSettingsPage.WaitForElement(By.XPath(HostSettingsPage.LogContent), 30); StringAssert.DoesNotContain("ERROR", hostSettingsPage.FindElement(By.XPath(HostSettingsPage.LogContent)).Text, "The Installer Log File contains ERRORS"); }
public void CreateChildSiteAndPrepareSettings(string childSiteName) { //create a child site HostSiteManagementPage hostSiteMgmtPage = new HostSiteManagementPage(_driver); hostSiteMgmtPage.OpenUsingButtons(_baseUrl); hostSiteMgmtPage.AddNewChildSite(_baseUrl, childSiteName, "Child Site"); //navigate to child site hostSiteMgmtPage.OpenUsingButtons(_baseUrl); hostSiteMgmtPage.NavigateToChildSite(_baseUrl, childSiteName); //close welcome screen on child site var installerPage = new InstallerPage(_driver); installerPage.WelcomeScreen(); //disable popups on child site var adminSiteSettingsPage = new AdminSiteSettingsPage(_driver); adminSiteSettingsPage.OpenUsingButtons(_baseUrl); adminSiteSettingsPage.DisablePopups(); }
public void Test003_NavigateToChildSite() { Trace.WriteLine(BasePage.RunningTestKeyWord + "'Navigate to Child Site'"); var hostSiteManagementPage = new HostSiteManagementPage(_driver); hostSiteManagementPage.OpenUsingButtons(_baseUrl); hostSiteManagementPage.NavigateToChildSite(_baseUrl, _siteAlias); var installerPage = new InstallerPage(_driver); installerPage.WelcomeScreen(); Trace.WriteLine(BasePage.TraceLevelPage + "ASSERT current window Title"); Assert.That(installerPage.CurrentWindowTitle(), Is.StringContaining(_siteName + " > Home"), "The website name is not correct"); Trace.WriteLine(BasePage.TraceLevelPage + "ASSERT current window Url"); Assert.That(installerPage.CurrentWindowUrl(), Is.EqualTo("http://" + _baseUrl + "/" + _siteAlias), "The website URL is not correct"); }
private void RunInstallTest(XElement settings) { string testName = settings.Attribute("name").Value; string baseUrl = settings.Attribute("baseURL").Value; string browser = settings.Attribute("browser").Value; string template = settings.Attribute("Template").Value; string installerLanguage = settings.Attribute("InstallerLanguage").Value; string language = settings.Attribute("Language").Value; string username = settings.Attribute("UserName").Value; string password = settings.Attribute("Password").Value; string websiteName = settings.Attribute("WebsiteName").Value; IWebDriver driver = StartBrowser(browser); Trace.WriteLine("Running TEST: '" + testName + "'"); InstallerPage installerPage = new InstallerPage(driver); installerPage.OpenUsingUrl(baseUrl); installerPage.SetInstallerLanguage(installerLanguage); installerPage.SetDictionary(installerLanguage); installerPage.OpenUsingUrl(baseUrl); installerPage.FillAccountInfo(settings); installerPage.SetWebSiteLanguage(language); installerPage.ClickOnContinueButton(); installerPage.WaitForInstallationProcessToFinish(); installerPage.ClickOnVisitWebsiteButton(); Trace.WriteLine(BasePage.TraceLevelComposite + "Login to the site first time, using 'Visit Website' button:"); Trace.WriteLine(BasePage.TraceLevelComposite + "Set site language: '" + language + "'"); installerPage.SetDictionary(language); //Trace.WriteLine(BasePage.TraceLevelPage + "Verify frame title: '" + installerPage.CurrentFrameTitle() + "'"); //Utilities.SoftAssert(() => StringAssert.AreEqualIgnoringCase(installerPage.Translate("WelcomeScreenTitle"), installerPage.CurrentFrameTitle(), // "The Welcome Screen title is missing or incorrect")); installerPage.WelcomeScreen(); LoginPage loginPage = new LoginPage(driver); Trace.WriteLine("Verify Website Name: '" + websiteName + "'"); Utilities.SoftAssert(() => StringAssert.Contains(websiteName, installerPage.CurrentWindowTitle(), "The website name is incorrect")); switch (template) { case "Default Template": { loginPage.LoginUsingLoginLinkAndFrame(username, password); //default template; look for menu options, 4 options should be present Trace.WriteLine("Assert current Template: Default: "); Assert.AreEqual(4, installerPage.FindElements(By.XPath("//ul[@class ='nav nav-pills']/li")).Count(), "This is not a Default page or The number of options are incorrect"); loginPage.LoginUsingDirectUrl(baseUrl, username, password); //default template; look for menu options, 4 options should be present Trace.WriteLine("Assert current Template: Default: "); Assert.AreEqual(4, installerPage.FindElements(By.XPath("//ul[@class = 'nav nav-pills']/li")).Count(), "This is not a Default page or The number of options are incorrect"); break; } case "Mobile Template": { Trace.WriteLine("Assert current Template: Mobile: "); Assert.AreEqual(3, installerPage.FindElements(By.XPath("//ol[@class='mobileInstruction']/li")).Count(), "This is not a Mobile page or The mobile instructions are not present on the page or The number of mobile instructions steps are incorrect"); break; } case "Blank Template": { loginPage.LoginUsingLoginLinkAndFrame(username, password); //blank template; look for the "Home" option (only one option is present) Trace.WriteLine("Assert current Template: Blank: "); Assert.AreEqual(1, installerPage.FindElements(By.XPath("//ul[@class='nav nav-pills']/li")).Count(), "This is not a Blank page or The number of options are incorrect"); loginPage.LoginUsingDirectUrl(baseUrl, username, password); //blank template; look for the "Home" option (only one option is present) Trace.WriteLine("Assert current Template: Blank: "); Assert.AreEqual(1, installerPage.FindElements(By.XPath("//ul[@class='nav nav-pills']/li")).Count(), "This is not a Blank page or The number of options are incorrect"); break; } } }
public void RunUpgradeTest(XElement settings) { string testName = settings.Attribute("name").Value; string baseUrl = settings.Attribute("baseURL").Value; string browser = settings.Attribute("browser").Value; string userName = settings.Attribute("UserName").Value; string password = settings.Attribute("Password").Value; IWebDriver driver = StartBrowser(browser); Trace.WriteLine("Running TEST: '" + testName + "'"); UpgradePage upgradePage = new UpgradePage(driver); upgradePage.OpenUsingUrl(baseUrl); upgradePage.FillAccountInfo(userName, password); upgradePage.ClickOnUpgradeButton(); upgradePage.WaitForUpgradingProcessToFinish(); upgradePage.ClickOnSeeLogsButton(); upgradePage.WaitForLogContainer(); Trace.WriteLine("Assert Log records: "); StringAssert.DoesNotContain("ERROR", upgradePage.FindElement(By.XPath(UpgradePage.UpgraderLogContainer)).Text, "PLZ check log file, it contains error messages"); upgradePage.ClickOnVisitWebsiteButton(); var installerPage = new InstallerPage(driver); installerPage.WelcomeScreen(); LoginPage loginPage = new LoginPage(driver); loginPage.WaitForElement(By.XPath(ControlPanelIDs.LoginLink), 20).WaitTillVisible(20).Click(); loginPage.WaitAndSwitchToFrame(30); loginPage.DoLoginUsingLoginLink(userName, password); loginPage.WaitAndSwitchToWindow(30); HostSettingsPage hostSettingsPage = new HostSettingsPage(driver); hostSettingsPage.OpenUsingButtons(baseUrl); hostSettingsPage.Click(By.XPath(HostSettingsPage.LogsTab)); SlidingSelect.SelectByValue(driver, By.XPath("//a[contains(@id, '" + HostSettingsPage.LogFilesDropDownArrow + "')]"), By.XPath(HostSettingsPage.LogFilesDropDownList), HostSettingsPage.OptionOne, SlidingSelect.SelectByValueType.Contains); hostSettingsPage.WaitForElement(By.XPath(HostSettingsPage.LogContent)); StringAssert.Contains("the script ran successfully", hostSettingsPage.FindElement(By.XPath(HostSettingsPage.LogContent)).Text, "The Log File is not empty"); SlidingSelect.SelectByValue(driver, By.XPath("//a[contains(@id, '" + HostSettingsPage.LogFilesDropDownArrow + "')]"), By.XPath(HostSettingsPage.LogFilesDropDownList), HostSettingsPage.OptionTwo, SlidingSelect.SelectByValueType.Contains); hostSettingsPage.WaitForElement(By.XPath(HostSettingsPage.LogContent)); StringAssert.DoesNotContain("ERROR", hostSettingsPage.FindElement(By.XPath(HostSettingsPage.LogContent)).Text, "The Installer Log File contains ERRORS"); }