public void SetUp() { Config.SetUIEnvVariables(); //Create extent test extentTest = ExtentTestManager.StartTest(TestContextInfo.TestName, TestContextInfo.Description, TestContextInfo.Categories); Log = new Logger(Utils.GetLogFile(TestContextInfo.CurrentContext), TestContextInfo.CurrentContext, extentTest); Log.StartTest(); // Delete old log files FileUtils.DeleteFilesOlderThan(Constants.LogRetentionDays, Utils.GetLogFolder(), Constants.LogExtension); FileUtils.DeleteFilesOlderThan(Constants.LogRetentionDays, Utils.GetScreenshotFolder(), Constants.ImgExtension); //Create new web driver DriverUtils.CreateDriver(new DriverProperties(Config.ConfigFilePath, Config.Driver)); DriverUtils.Maximize(); DriverUtils.GoToUrl(Config.Url); //Initial page objects PageFactory.InitialPageObjects(this); }
public void NavigationMenu_Test() { IWebDriver driver = DriverUtils.CreateDriver(); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(5); TestWrapper.Test(driver, () => { // Open Landing Page URLs.OpenUrl(driver); var navigationMenu = new Navigation_Menu(driver); var aboutMePage = navigationMenu.ClickAboutMeLink(); aboutMePage.GetHeaderText().ShouldBe("About Me", "About Me"); var contactsPage = navigationMenu.ClickContactMeLink(); contactsPage.GetHeaderText().ShouldBe("Contact Me", "Contact Me"); var picturesPage = navigationMenu.ClickPicturesLink(); picturesPage.GetHeaderText().ShouldBe("Pictures", "Pictures"); var pricesPage = navigationMenu.ClickPricesLink(); pricesPage.GetHeaderTitle().ShouldBe("Prices", "Prices"); var careRequestPage = navigationMenu.ClickCareRequestLink(); careRequestPage.GetHeaderText().ShouldBe("Care Request", "Care Request"); }); }
public void TestDriverKey() { Log.Info("1. Navigate to google"); DriverUtils.GoToUrl("https://www.google.com"); Log.Info("2. Search a text"); var txtSearch = new BaseElement("name={0}"); txtSearch.Format("q").SendKeys("Hello Selenium"); WaitHelper.WaitUntil(() => txtSearch.Format("q").Value.Equals("444"), TimeSpan.FromSeconds(4), TimeSpan.FromSeconds(2)); var properties = new DriverProperties(Constants.CONFIG_FILE_PATH, "local-chrome"); Log.Info("3. Create a new driver"); DriverUtils.CreateDriver(properties, "new chrome"); DriverUtils.GoToUrl("https://www.seleniumhq.org/"); DriverUtils.SwitchDriverTo(); txtSearch.Format("q").SendKeys("Hello LogiGear"); Assert.IsTrue(true, "Log this if false 1"); bool abc = false; abc.Should().BeTrue("I don't know"); }
public void Contact_Test() { IWebDriver driver = DriverUtils.CreateDriver(); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(5); TestWrapper.Test(driver, () => { // Open Landing Page var landingPage = URLs.OpenUrl(driver); //Open Contact page var contactPage = landingPage.ClickContactMeLink(); //Verify Header text var header = contactPage.ContactHeader.Text; header.ShouldBe("Contact Me", "Contact Me header"); //Verify Care Request link var careRequestLink = contactPage.GetCareRequestLink(); careRequestLink.ShouldBe(Config.GetURL("AlexsPetsURL") + "careRequest.html", "URL"); //Verify Email link var emailLink = contactPage.GetEmailLink(); emailLink.ShouldBe("mailto:[email protected]", "Email"); //Verify Envelope image var envelopeImage = contactPage.GetEnvelopeImage(); envelopeImage.ShouldBe(Config.GetURL("AlexsPetsURL") + "images/mail.png", "Envelope"); }); }
public void GivenIAmUsingBrowser(string browser) { driver = driverUtils.CreateDriver(browser); mainPage = new MainPage(driver); resultsPage = new ResultsPage(driver); }
public void CareRequest_Test() { IWebDriver driver = DriverUtils.CreateDriver(); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(5); TestWrapper.Test(driver, () => { // Open Landing Page var landingPage = URLs.OpenUrl(driver); //Open Care Request page var careRequestPage = landingPage.ClickCareRequestLink(); var customer = new Person(); var catsNumber = "2"; var otherNumber = "3+"; var visitsPerDay = "2"; var comment = "Please be quiet, our spiders are easily scared"; //Fill out inputs careRequestPage.FillOutContactInformation(customer); //Click Animal Type checkboxes careRequestPage.RequestCatCare(catsNumber); careRequestPage.RequestOtherCare(otherNumber); //Visits per day careRequestPage.SetVisitsPerDay(visitsPerDay); //Comments careRequestPage.FillOutComments(comment); //Open Request summary page RequestSummaryPage requestSummaryPage = careRequestPage.ClickRequestButton(); //Verify Page opened by checking page element is visible requestSummaryPage.IsSummaryBlockDisplayed().ShouldBeTrue("Summary Block is Displayed"); //Verify Header text var header = requestSummaryPage.PageHeader.Text; header.ShouldBe("Request Summary", "Header"); //Verify contact info VerifyContactInformation(requestSummaryPage, customer); //Verify all other information is populated correctly VerifyOtherInformation(requestSummaryPage, catsNumber, otherNumber, visitsPerDay, comment); string[] data = { $"{catsNumber} cat(s)", $"{otherNumber} other animal(s)", $"{visitsPerDay} visits per day are required.", comment }; VerifyOtherInformationAlternative(requestSummaryPage, data); //Click Close button and verify the page was closed requestSummaryPage.CloseButton.Click(); Thread.Sleep(1000); requestSummaryPage.IsSummaryBlockDisplayed().ShouldBeFalse("Summary Block is not displayed"); }); }
public void KievlTime_Test() { IWebDriver driver = DriverUtils.CreateDriver(); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(5); TestWrapper.Test(driver, () => { // Open Landing Page var landingPage = URLs.OpenUrl(driver); //Open Local Time Page var localTimePage = landingPage.ClickLocalTimeItem(); string input = "Kiev"; //Find Kiev using the Search field??? localTimePage.FillOutSearchField(input); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(5); var KievPage = localTimePage.ClickKievUkraineQuery(); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(5); //Verify the time displayed in the search results is correct one DateTime kievTime = DateTime.UtcNow.AddHours(3); var kievTimeString = kievTime.ToLongTimeString(); var appKievTimeString = KievPage.GetAppKievTime(); kievTimeString.ShouldBe(appKievTimeString, "Local Kiev Time"); //Verify the breadcrumbs say Home / Local Time / Ukraine / Kiev var breadcrumbs = KievPage.GetBreadcrumbsText(); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(5); breadcrumbs.ShouldBe("Home Local Time Ukraine Kiev", "Breadcrumbs"); // Verify Kiev-specific elements on the page var currentLocalTimeHeader = KievPage.CurrentLocalTimeHeader.Text; currentLocalTimeHeader.ShouldBe("Current local time in Kiev, Ukraine", "Container Header"); var convertTimeHeader = KievPage.ConvertTimeHeader.Text; convertTimeHeader.ShouldBe("Convert Kiev Time", "Convert Kiev Time Header"); var kievInformationHeader = KievPage.KievInformationHeader.Text; kievInformationHeader.ShouldBe("Kiev Information", "Kiev Information Header"); var kievFactsHeader = KievPage.KievFactsHeader.Text; kievFactsHeader.ShouldBe("Kiev Facts", "Kiev Facts Header"); var countryName = KievPage.CountryName.Text; countryName.ShouldBe("Ukraine", "Country Name"); var currencyName = KievPage.CurrencyName.Text; currencyName.ShouldBe("Hryvnia (UAH)", "Currency Name"); var timeZoneName = KievPage.TimeZoneName.Text; timeZoneName.ShouldBe("(EEST)", "Time Zone Name"); }); }
public void CountdownPage_Test() { IWebDriver driver = DriverUtils.CreateDriver(); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(5); TestWrapper.Test(driver, () => { // Open Landing Page var landingPage = URLs.OpenUrl(driver); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(5); //Open Timers Page var timersPage = landingPage.ClickTimersItem(); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(5); //Open Countdown Page var countdownPage = timersPage.ClickCountdownIcon(); //Click Create your Countdown button var createCountdown = countdownPage.ClickCreateYourCountdownIcon(); //Unique name for event var faker = new Faker(); var uniqueEventName = faker.Name.FirstName(); createCountdown.EventNameField.SendKeys(uniqueEventName); //Input date in 10 days DateTime inTenDays = DateTime.Now.AddDays(10); var inTenDaysString = inTenDays.ToShortDateString(); createCountdown.DateInputField.SendKeys(inTenDaysString); //Click Create button var createButton = createCountdown.ClickCreateButton(); //Verify event was created var eventName = eventPage.GetEventHeaderText(); eventName.ShouldBe(uniqueEventName, "Header"); //Verify event is scheduled for a correct date var inTenDaysLongString = inTenDays.ToLongDateString(); var timeString = eventPage.GetTimeString(); timeString.ShouldContain(inTenDaysLongString, "Correct date"); }); }
public void vefifyRatingOnResults(string browser) { //If I filter my search by 5 stars room, the results must be rated as 5 stars url = "https://www.booking.com"; driverUtils = new DriverUtils(); driver = driverUtils.CreateDriver(browser); mainPage = new MainPage(driver); resultsPage = new ResultsPage(driver); driverUtils.DriverNavigate(driver, url); mainPage.verifyIfImOnMainPage(); mainPage.fillSearchFields(); mainPage.clickSearchButton(); resultsPage.verifyIfImOnResultsPage(); resultsPage.clickFiveStarsRating(); resultsPage.verifyFiveStar(); driverUtils.DestroyDriver(driver); }
public void filterMySearchByStars(string browser, string hotelName, string shouldAppear) { //Filter my search by stars url = "https://www.booking.com"; driverUtils = new DriverUtils(); driver = driverUtils.CreateDriver(browser); mainPage = new MainPage(driver); resultsPage = new ResultsPage(driver); driverUtils.DriverNavigate(driver, url); mainPage.verifyIfImOnMainPage(); mainPage.fillSearchFields(); mainPage.clickSearchButton(); resultsPage.verifyIfImOnResultsPage(); resultsPage.clickFiveStarsRating(); resultsPage.validateIfFiveStarHotelsWereListed(hotelName, shouldAppear); driverUtils.DestroyDriver(driver); }
public void Prices_Test() { IWebDriver driver = DriverUtils.CreateDriver(); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(5); TestWrapper.Test(driver, () => { // Open Landing Page var landingPage = URLs.OpenUrl(driver); //Open Prices page var pricesPage = landingPage.ClickPricesLink(); //Verify Header text var header = pricesPage.PricesHeader.Text; header.ShouldBe("Prices", "Prices"); //Verify paragraph text var paragraph = pricesPage.PricesParagraph.Text; paragraph.ShouldBe("These are my prices for different pets.", "Paragraph text"); //Verify prices list text //var list = pricesPage.PricesList.Text; //list.ShouldBe("Dogs $10 per day"); var collectedPrices = pricesPage.GetPricesTexts(); var expectedPrices = new List <string>() { "Dogs $10 per day", "Cats $10 per day", "Bunnies/Rabits $10 per day", "Hamster $8 per day", "Rat/Mice $8 per day", "Guinea Pig $8 per day", "Parott/Bird $8 per day", "Fish $8 per day", "Snake $8 per day", "Lizard $8 per day" }; collectedPrices.ShouldBeEqual(expectedPrices, "Prices list"); }); }
public void AboutMe_Test() { var driver = DriverUtils.CreateDriver(); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(5); TestWrapper.Test(driver, () => { // Open Landing Page var landingPage = URLs.OpenUrl(driver); //Open About Me page var aboutMePage = landingPage.ClickAboutMeLink(); //Verify text on the page var alltext = aboutMePage.GetAllText(); alltext.ShouldBe(aboutMePage.paragraphsText, "Paragraph Text"); //Verify Header text var header = aboutMePage.AboutMeHeader.Text; header.ShouldBe("About Me", "About Me header"); }); }
public void LocalTime_Test() { IWebDriver driver = DriverUtils.CreateDriver(); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(5); TestWrapper.Test(driver, () => { // Open Landing Page var landingPage = URLs.OpenUrl(driver); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(5); //Open Local Time Page var localTimePage = landingPage.ClickLocalTimeItem(); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(5); string input = "Kiev"; // Verify the Page Header var header = localTimePage.Header.Text; header.ShouldBe("Local Time", "Header"); //Find Kiev using the Search field??? localTimePage.FillOutSearchField(input); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(5); var KievPage = localTimePage.ClickKievUkraineQuery(); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(5); //Verify the header of the page is Kiev Time var headerKiev = KievPage.HeaderKiev.Text; headerKiev.ShouldBe("Kiev Time", "Header Kiev Time"); // }); }
public void LandingPage_Test() { IWebDriver driver = DriverUtils.CreateDriver(); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(5); TestWrapper.Test(driver, () => { // Open Landing Page var landingPage = URLs.OpenUrl(driver); //Verify text on the page var alltext = landingPage.GetAllText(); alltext.ShouldBe(landingPage.paragraphsText, "Page text"); //Verify Header text string header = landingPage.LandingHeader.Text; header.ShouldBe("Alex's Pet Business", "Header text"); //Verify images of the page landingPage.CatImage.Displayed.ShouldBeTrue("Cat img"); landingPage.DogImage.Displayed.ShouldBeTrue("Dog img"); }); }
public void Pictures_Test() { IWebDriver driver = DriverUtils.CreateDriver(); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(5); TestWrapper.Test(driver, () => { // Open Landing Page URLs.OpenUrl(driver); var navigationMenu = new Navigation_Menu(driver); var picturesPage = navigationMenu.ClickPicturesLink(); picturesPage.GetHeaderText().ShouldBe("Pictures", "Pictures"); picturesPage.GetFirstParagraphText().ShouldBe("These are all of the pets I can take care of for you!", "Paragrap text"); var collectedSources = picturesPage.GetImagesSources(); collectedSources.RemoveAt(0); var expectedSources = new List <string>() { "images/kitten.gif", "images/dogp.png", "images/hamster.png", "images/rat.png", "images/parrot.png", "images/guinea-pig.png", "images/bunnyFail.png", "images/fish.png", "images/snake.png", "images/lizard.png" }; collectedSources.ShouldBeEqual(expectedSources, "List of src"); }); }
public void LandingPage_Test() { IWebDriver driver = DriverUtils.CreateDriver(); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(5); TestWrapper.Test(driver, () => { // Open Landing Page var landingPage = URLs.OpenUrl(driver); //Verify Header Menu Items string itemHome = landingPage.HomeMenuItem.Text; itemHome.ShouldBe("Home", "Home - Item Menu"); string itemConverter = landingPage.ConverterMenuItem.Text; itemConverter.ShouldBe("Converter", "Converter - Item Menu"); string itemLocalTime = landingPage.LocalTimeMenuItem.Text; itemLocalTime.ShouldBe("Local Time", "Local Time - Item Menu"); string itemTimers = landingPage.TimersMenuItem.Text; itemTimers.ShouldBe("Timers", "Timers - Item Menu"); string itemCalendar = landingPage.CalendarMenuItem.Text; itemCalendar.ShouldBe("Calendar", "Calendar - Item Menu"); //Verify logo var imageLogo = landingPage.LandingLogoImage.Displayed; imageLogo.ShouldBeTrue("Logo img"); var textLogo = landingPage.LandingLogoText.Displayed; textLogo.ShouldBeTrue("Logo Text img"); string logoText = landingPage.GetLogoText(); logoText.ShouldBe("Savvy Time World Clock", "Logo Text"); //Verify 12/24 switch var hourSwitch = landingPage.LandingHourSwitch.Displayed; hourSwitch.ShouldBeTrue("12/24 switch"); //Verify Time/Date/Location Container // var container = landingPage.LandingInfoContainer.Displayed; //container.ShouldBeTrue("Container"); //Verify Search Field var searchField = landingPage.LandingSearchField.Displayed; searchField.ShouldBeTrue("Search field"); //Verify Time Converter var timeConverter = landingPage.LandingTimeConverter.Displayed; timeConverter.ShouldBeTrue("Time Converter"); //Verify Time Around the World var localTime = landingPage.LandingLocalTime.Displayed; localTime.ShouldBeTrue("Time Around the World"); //Verify Footer Items string estIst = landingPage.LandingFooterEstIst.Text; estIst.ShouldBe("EST to IST", "EST to IST"); string gmtEst = landingPage.LandingFooterGmtEst.Text; gmtEst.ShouldBe("GMT to EST", "GMT to EST"); string pstEST = landingPage.LandingFooterPstEst.Text; pstEST.ShouldBe("PST to EST", "PST to EST"); string estGmt = landingPage.LandingFooterEstGmt.Text; estGmt.ShouldBe("EST to GMT", "EST to GMT"); string pstGmt = landingPage.LandingFooterPstGmt.Text; pstGmt.ShouldBe("PST to GMT", "PST to GMT"); string contactUs = landingPage.LandingFooterContactUs.Text; contactUs.ShouldBe("Contact Us", "Contact Us"); string disclaimer = landingPage.LandingFooterDisclaimer.Text; disclaimer.ShouldBe("Disclaimer", "Disclaimer"); }); }