public void CheckTheTotalPriceOfTwoIdenticalGoods() { Logger.Log.Info("CheckTheTotalPriceOfTwoIdenticalGoods"); expectedProduct = ProductCreator.withCountAndPriceMultiplyedByTwo(); string totalPrice = ""; ProductPage productPageCheckTheTotalPriceOfTwoIdenticalGoods = new ProductPage(driver); try { BasketPage basketPageCheckTheTotalPriceOfTwoIdenticalGoods = productPageCheckTheTotalPriceOfTwoIdenticalGoods.OpenPage(expectedProduct.URL) .AcceptCookies() .AddProductToBasketSeveralTimes(expectedProduct.count) .NavigateToBasket(); products = basketPageCheckTheTotalPriceOfTwoIdenticalGoods.GetProducts(); totalPrice = basketPageCheckTheTotalPriceOfTwoIdenticalGoods.GetTotalPrice(); } catch (Exception ex) { Logger.ErrorHandler(driver, ex); } Assert.AreEqual(expectedProduct.name, products[0].name, "invalid name"); Assert.AreEqual(expectedProduct.color.ToLower(), products[0].color, "invalid color"); Assert.AreEqual(expectedProduct.size, products[0].size, "invalid size"); Assert.AreEqual(expectedProduct.item, products[0].item, "invalid item"); Assert.AreEqual(expectedProduct.personalisation, products[0].personalisation, "invalid personalisation"); Assert.AreEqual(expectedProduct.personalisationColor, products[0].personalisationColor, "invalid personalisation color"); Assert.AreEqual(expectedProduct.price, totalPrice, "invalid price"); Assert.AreEqual(expectedProduct.count, products[0].count, "invalid count"); }
public void ThenISeeNotificationMessageOnThe(string expectedMessage, string page) { string currentMessage = string.Empty; switch (page) { case "Login popup": currentMessage = new LoginPopUpPage().GetTextMessageError(); break; case "Reset Password": currentMessage = new HtmlElement(By.CssSelector("h4")).Text; break; case "Reset Password popup": currentMessage = new ResetPasswordPopUpPage().GetStatusField(); break; case "Basket Page": currentMessage = new BasketPage().GetTextElement("Basket Is Empty"); break; default: throw new NotImplementedException(); } Assert.AreEqual(expectedMessage.ToLower(), currentMessage.ToLower()); }
public BasketItemViewerWindow(BasketPage caller, IProduct product, int quantity) { InitializeComponent(); this.caller = caller; this.product = product; productTitleTextblock.Text = this.product.Name; productDesciptionTextblock.Text = this.product.Description; productStockCountTextblock.Text = this.product.UnitsInStock.ToString(); quantityToBuy.Value = quantity; if (this.product.UnitsInStock > 1) { quantityToBuy.Maximum = (int)this.product.UnitsInStock; quantityToBuy.Minimum = 0; } else if (this.product.UnitsInStock == 1) { quantityToBuy.Minimum = 0; quantityToBuy.Maximum = 1; } else { productStockCountTextblock.Text = "OUT OF STOCK"; quantityToBuy.Value = 0; quantityToBuy.IsEnabled = false; setQuantity.IsEnabled = false; tbQuantityInStock.Visibility = tbQuantityToBuy.Visibility = quantityToBuy.Visibility = setQuantity.Visibility = Visibility.Collapsed; } }
public void CheckProductAttributesAfterSizeChoice() { Logger.Log.Info("CheckProductAttributesAfterSizeChoice"); expectedProduct = ProductCreator.withManySizes_04(); ProductPage productPageCheckProductAttributesAfterSizeChoice = new ProductPage(driver); try { BasketPage basketCheckProductAttributesAfterSizeChoice = productPageCheckProductAttributesAfterSizeChoice .OpenPage(expectedProduct.URL) .AcceptCookies() .ChooseSize(expectedProduct.size) .AddProductToBasket() .NavigateToBasket(); products = basketCheckProductAttributesAfterSizeChoice.GetProducts(); } catch (Exception ex) { Logger.ErrorHandler(driver, ex); } Assert.AreEqual(expectedProduct.name, products[0].name, "invalid name"); Assert.AreEqual(expectedProduct.color.ToLower(), products[0].color, "invalid color"); Assert.AreEqual(expectedProduct.size, products[0].size, "invalid size"); Assert.AreEqual(expectedProduct.item, products[0].item, "invalid item"); Assert.AreEqual(expectedProduct.price, products[0].price, "invalid price"); Assert.AreEqual(expectedProduct.count, products[0].count, "invalid count"); }
public void CheckAddingPersonalisation() { Logger.Log.Info("CheckAddingPersonalisation"); expectedProduct = ProductCreator.withPersonalisation(); ProductPage productPageCheckAddingPersonalisation = new ProductPage(driver); try { BasketPage basketPageCheckAddingPersonalisation = productPageCheckAddingPersonalisation.OpenPage(expectedProduct.URL) .AcceptCookies() .AddPersonalization(expectedProduct.personalisation) .AddProductToBasket() .NavigateToBasket(); products = basketPageCheckAddingPersonalisation.GetProducts(); } catch (Exception ex) { Logger.ErrorHandler(driver, ex); } Assert.AreEqual(expectedProduct.name, products[0].name, "invalid name"); Assert.AreEqual(expectedProduct.color.ToLower(), products[0].color, "invalid color"); Assert.AreEqual(expectedProduct.size, products[0].size, "invalid size"); Assert.AreEqual(expectedProduct.item, products[0].item, "invalid item"); Assert.AreEqual(expectedProduct.personalisation, products[0].personalisation, "invalid personalisation"); Assert.AreEqual(expectedProduct.personalisationColor, products[0].personalisationColor, "invalid personalisation color"); Assert.AreEqual(expectedProduct.price, products[0].price, "invalid price"); Assert.AreEqual(expectedProduct.count, products[0].count, "invalid count"); }
public static void SetUpFireFox() { _driver = CustomDrivers.GetFireFoxWithOptions(); _homePage = new HomePage(_driver); _logInPage = new LogInPage(_driver); _productsOfferPage = new ProductsOfferPage(_driver); _basketPage = new BasketPage(_driver); }
public void SetupTest() { driver = new ChromeDriver(); mainPage = new MainPage(); basketPage = new BasketPage(); wait = new WebDriverWait(driver, TimeSpan.FromSeconds(10)); baseURL = "http://localhost:8080/litecart/"; verificationErrors = new StringBuilder(); driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(30); }
public void TestAddedToBasket() { BasketPage page = new BasketPage(driver) .Open() .AcceptCookies() .ChooseProduct(0) .ClickAddToBasket() .ClickOpenBasket() .WaitForBasketOpen(); Assert.IsFalse(page.EmptyBasketMessageDisplayed, "Basket is not empty"); }
public void TestRemoveFromBasket() { BasketPage page = new BasketPage(driver) .Open() .AcceptCookies() .ChooseProduct(0) .ClickAddToBasket() .ClickOpenBasket() .WaitForBasketOpen() .RemoveAllItems(); Assert.IsTrue(page.EmptyBasketMessageDisplayed, "Basket is empty"); }
public void CheckTheTotalPriceOfTwoDifferentGoods() { Logger.Log.Info("CheckTheTotalPriceOfTwoDifferentGoods"); expectedProducts = new List <Product>(); expectedProducts.Add(ProductCreator.withManyColors_Black()); expectedProducts.Add(ProductCreator.withManyColors_ArchiveBeige()); string totalPrice = ""; ProductPage productPageCheckTheTotalPriceOfTwoDifferentGoods = new ProductPage(driver); try { productPageCheckTheTotalPriceOfTwoDifferentGoods.OpenPage(expectedProducts[0].URL) .AcceptCookies() .AddProductToBasket() .NavigateToBasket(); BasketPage basketPageCheckTheTotalPriceOfTwoDifferentGoods = productPageCheckTheTotalPriceOfTwoDifferentGoods.OpenPage(expectedProducts[1].URL) .AddProductToBasket() .NavigateToBasket(); products = basketPageCheckTheTotalPriceOfTwoDifferentGoods.GetProducts(); totalPrice = basketPageCheckTheTotalPriceOfTwoDifferentGoods.GetTotalPrice(); } catch (Exception ex) { Logger.ErrorHandler(driver, ex); } Assert.AreEqual(expectedProducts[0].name, products[0].name, "invalid name"); Assert.AreEqual(expectedProducts[0].color.ToLower(), products[0].color, "invalid color"); Assert.AreEqual(expectedProducts[0].size, products[0].size, "invalid size"); Assert.AreEqual(expectedProducts[0].item, products[0].item, "invalid item"); Assert.AreEqual(expectedProducts[0].personalisation, products[0].personalisation, "invalid personalisation"); Assert.AreEqual(expectedProducts[0].personalisationColor, products[0].personalisationColor, "invalid personalisation color"); Assert.AreEqual(expectedProducts[0].count, products[0].count, "invalid count"); Assert.AreEqual(expectedProducts[1].name, products[1].name, "invalid name"); Assert.AreEqual(expectedProducts[1].color.ToLower(), products[1].color, "invalid color"); Assert.AreEqual(expectedProducts[1].size, products[1].size, "invalid size"); Assert.AreEqual(expectedProducts[1].item, products[1].item, "invalid item"); Assert.AreEqual(expectedProducts[1].personalisation, products[1].personalisation, "invalid personalisation"); Assert.AreEqual(expectedProducts[1].personalisationColor, products[1].personalisationColor, "invalid personalisation color"); Assert.AreEqual(expectedProducts[1].count, products[1].count, "invalid count"); string productsTotalPrice = "£1,040"; Assert.AreEqual(productsTotalPrice, totalPrice, "invalid price"); }
public void CheckTheBiggerPriceForBiggerSizeOfParfum() { Logger.Log.Info("CheckTheBiggerPriceForBiggerSizeOfParfum"); expectedProducts = new List <Product>(); expectedProducts.Add(ProductCreator.with100ml()); expectedProducts.Add(ProductCreator.with30ml()); ProductPage productPageCheckTheTotalPriceOfTwoDifferentGoods = new ProductPage(driver); try { productPageCheckTheTotalPriceOfTwoDifferentGoods.OpenPage(expectedProducts[0].URL) .AcceptCookies() .AddProductToBasket() .NavigateToBasket(); BasketPage basketPageCheckTheTotalPriceOfTwoDifferentGoods = productPageCheckTheTotalPriceOfTwoDifferentGoods.OpenPage(expectedProducts[1].URL) .AddProductToBasket() .NavigateToBasket(); products = basketPageCheckTheTotalPriceOfTwoDifferentGoods.GetProducts(); } catch (Exception ex) { Logger.ErrorHandler(driver, ex); } Assert.AreEqual(expectedProducts[0].name, products[0].name, "invalid name"); Assert.AreEqual(expectedProducts[0].color, products[0].size, "invalid color"); Assert.AreEqual(expectedProducts[0].size, products[0].color, "invalid size"); Assert.AreEqual(expectedProducts[0].item, products[0].item, "invalid item"); Assert.AreEqual(expectedProducts[0].personalisation, products[0].personalisation, "invalid personalisation"); Assert.AreEqual(expectedProducts[0].personalisationColor, products[0].personalisationColor, "invalid personalisation color"); Assert.AreEqual(expectedProducts[0].price, products[0].price, "invalid price"); Assert.AreEqual(expectedProducts[0].count, products[0].count, "invalid count"); Assert.AreEqual(expectedProducts[1].name, products[1].name, "invalid name"); Assert.AreEqual(expectedProducts[1].color, products[1].size, "invalid color"); Assert.AreEqual(expectedProducts[1].size, products[1].color, "invalid size"); Assert.AreEqual(expectedProducts[1].item, products[1].item, "invalid item"); Assert.AreEqual(expectedProducts[1].personalisation, products[1].personalisation, "invalid personalisation"); Assert.AreEqual(expectedProducts[1].personalisationColor, products[1].personalisationColor, "invalid personalisation color"); Assert.AreEqual(expectedProducts[1].price, products[1].price, "invalid price"); Assert.AreEqual(expectedProducts[1].count, products[1].count, "invalid count"); Assert.Greater(products[0].price, products[1].price, "invalid price"); }
/// <summary> /// This method gives the list of data like Item name, quantity and total price /// </summary> /// <param name="driver"></param> /// <returns></returns> public List <String> getDataInBasketPage(IWebDriver driver) { BasketPage basketPageElements = new BasketPage(driver); List <String> basketData = new List <string>(); try { basketData.Add(generalLib.getTextFromElement(driver, basketPageElements.getBasketItemName())); basketData.Add(basketPageElements.getBasketQuantityTextbox().GetAttribute("value")); basketData.Add(generalLib.getTextFromElement(driver, basketPageElements. getBasketTotalPrice())); } catch (Exception ex) { Console.WriteLine("HResult in basket :" + ex.HResult); } return(basketData); }
public void SetupDriver() { driver = DriverManager.GetDriver(); wait = WaitManager.GetDefaultWait(driver); extentTest = extentReports.CreateTest(ScenarioContext.Current.ScenarioInfo.Title); homePage = new HomePage(driver, wait); bookDetailsPage = new BookDetailsPage(driver, wait); foundResultsPage = new FoundResultsPage(driver, wait); basketPage = new BasketPage(driver, wait); ScenarioContext.Current.Set <IWebDriver>(driver); ScenarioContext.Current.Set <IWait <IWebDriver> >(wait); ScenarioContext.Current.Set <HomePage>(homePage); ScenarioContext.Current.Set <FoundResultsPage>(foundResultsPage); ScenarioContext.Current.Set <BookDetailsPage>(bookDetailsPage); ScenarioContext.Current.Set <BasketPage>(basketPage); ScenarioContext.Current.Set <ExtentTest>(extentTest); }
public void CheckProductAttributesAfterColorChange() { ProductPage productPageCheckProductAttributesAfterColorChange = new ProductPage(driver); BasketPage basketCheckProductAttributesAfterColorChange = productPageCheckProductAttributesAfterColorChange .OpenPage(TestingProducts.SonnyBumBagBlack.URL) .AcceptCookies() .ChooseColor("Archive beige", TestingProducts.CottonBumBag.name) .AddProductToBasket() .NavigateToBasket(); List <Product> products = basketCheckProductAttributesAfterColorChange.GetProducts(); Assert.AreEqual(TestingProducts.CottonBumBag.name, products[0].name, "invalid name"); Assert.AreEqual(TestingProducts.CottonBumBag.color, products[0].color, "invalid color"); Assert.AreEqual(TestingProducts.CottonBumBag.size, products[0].size, "invalid size"); Assert.AreEqual(TestingProducts.CottonBumBag.item, products[0].item, "invalid item"); Assert.AreEqual(TestingProducts.CottonBumBag.price, products[0].price, "invalid price"); Assert.AreEqual(TestingProducts.CottonBumBag.count, products[0].count, "invalid count"); }
public void BuyAProduct() { //Arrange var minpriceValueToSet = 100; var maxpriceValueToSet = 2000; var name = "‘ол≥о"; var booksResultsPage = new FilterPage(driver); var SingleBookPage = new GoodsItemPage(driver); var Basket = new BasketPage(driver); var Checkout = new CheckoutPage(driver); //Act FilteringContext.FilterByPriceRange(booksResultsPage, minpriceValueToSet, maxpriceValueToSet); FilteringContext.ClickCheckbox(booksResultsPage, name); ResultSetContext.BuyElement(booksResultsPage, 0); BasketContext.ProceedToCheckout(Basket); CheckoutContext.InputReceiverData(Checkout, "Testik", "0980000001", "*****@*****.**"); //Assert GoodStateVerificationContext.VerifyMakeOrderIsClickable(Checkout); }
public void CheckProductAttributesAfterSizeChange() { ProductPage productPageCheckProductAttributesAfterSizeChange = new ProductPage(driver); BasketPage basketCheckProductAttributesAfterSizeChange = productPageCheckProductAttributesAfterSizeChange .OpenPage(TestingProducts.OversizedShirt.URL) .AcceptCookies() .ChooseSize("04") .AddProductToBasket() .NavigateToBasket(); List <Product> products = basketCheckProductAttributesAfterSizeChange.GetProducts(); Assert.AreEqual(TestingProducts.OversizedShirt.name, products[0].name, "invalid name"); Assert.AreEqual(TestingProducts.OversizedShirt.color.ToLower(), products[0].color, "invalid color"); Assert.AreEqual(TestingProducts.OversizedShirt.size, products[0].size, "invalid size"); Assert.AreEqual(TestingProducts.OversizedShirt.item, products[0].item, "invalid item"); Assert.AreEqual(TestingProducts.OversizedShirt.price, products[0].price, "invalid price"); Assert.AreEqual(TestingProducts.OversizedShirt.count, products[0].count, "invalid count"); }
public void Test() { Actions actions = new Actions(driver); BasketPage basketPage = new BasketPage(driver); var basketButton = basketPage.basketButton; var basketPopupMessage = basketPage.basketPopupMessage; actions.MoveToElement(basketButton).MoveToElement(basketButton).Perform(); var searchTextOnPopupMessageButton = basketPage.searchTextOnPopupMessageButton; Thread.Sleep(7000); foreach (var textItem in searchTextOnPopupMessageButton) { Console.WriteLine(textItem.Text.Trim()); Assert.True(textItem.Text.Trim().ToLower().Contains(titleTextMessage.Trim().ToLower()) || textItem.Text.Trim().ToLower().Contains(bodyTextMessage.Trim().ToLower()), $"Element '{basketPage.searchTextOnPopupMessageButton}' is not present on the page as expected"); } }
public void Buy() { //Arrange var minpriceValueToSet = 100; var maxpriceValueToSet = 2000; var name = "ю-аю-аю-цю-кю-лю-цю"; int HowCanlongIwait = 15000; var booksResultsPage = new FilterPage(driver); var SingleBookPage = new GoodsItemPage(driver); var Basket = new BasketPage(driver); var Checkout = new CheckoutPage(driver); //Act FilteringContext.FilterByPriceRange(booksResultsPage, minpriceValueToSet, maxpriceValueToSet, HowCanlongIwait); FilteringContext.ClickCheckbox(booksResultsPage, name, HowCanlongIwait); ResultSetContext.BuyElement(booksResultsPage, 0, HowCanlongIwait); BasketContext.ProceedToCheckout(Basket, HowCanlongIwait); CheckoutContext.InputReceiverData(Checkout, HowCanlongIwait);//modification with volid date //Assert VerificationContext.VerifyMakeOrderIsClickable(Checkout); }
public static BasketPageAssertions Should(this BasketPage page) { return(new BasketPageAssertions(page)); }
public void RegisterWebShopHandlers() { var app = Application.Current; app.Use(new HtmlFromJsonProvider()); app.Use(new PartialToStandaloneHtmlProvider()); Handle.GET("/webshop/rootpage", () => { Session session = Session.Current; if (session != null && session.Data != null) return session.Data; var standalone = new RootPage(); if (session == null) { session = new Session(SessionOptions.PatchVersioning); standalone.Html = "/Webshop/RootPage.html"; } standalone.Session = session; return standalone; }); Handle.GET("/webshop", () => { RootPage master = (RootPage)Self.GET("/webshop/rootpage"); master.CurrentPage = Db.Scope(() => { var page = new ProductListPage { Html = "/Webshop/Partials/ProductsList/ProductListPage.html", Data = new Order { Buyer = new Simplified.Ring1.Somebody { Name = "Buyer name" }, Seller = new Simplified.Ring1.Somebody { Name = "Seller name" }, } }; page.RefreshProducts(); return page; }); return master; }); Handle.GET("/webshop/{?}", (long objectNo) => { RootPage master = (RootPage)Self.GET("/webshop/rootpage"); master.CurrentPage = Db.Scope(() => { var page = new ProductListPage { Html = "/Webshop/Partials/ProductsList/ProductListPage.html", Data = Db.SQL<Order>("SELECT i FROM Simplified.Ring6.\"Order\" i WHERE i.ObjectNo = ?", objectNo).First, ObjectNo = objectNo, Products = Db.SQL<Product>("SELECT jk FROM Simplified.Ring3.Product jk") }; return page; }); return master; }); Handle.GET("/webshop/basket/{?}", (long objectNo) => { RootPage master = (RootPage)Self.GET("/webshop/rootpage"); master.CurrentPage = Db.Scope(() => { var page = new BasketPage { Html = "/Webshop/Partials/BasketPages/BasketPage.html", ObjectNo = objectNo, Data = Db.SQL<Order>("SELECT i FROM Simplified.Ring6.\"Order\" i WHERE i.ObjectNo = ?", objectNo).First }; return page; }); return master; }); Handle.GET("/checkout/shipping/{?}", (long objectNo) => { RootPage master = (RootPage)Self.GET("/webshop/rootpage"); master.CurrentPage = Db.Scope(() => { var page = new ShippingInformationPage { Html = "/Webshop/Partials/CheckoutPages/ShippingInformationPage.html", ObjectNo = objectNo, Data = Db.SQL<Order>("SELECT i FROM Simplified.Ring6.\"Order\" i WHERE i.ObjectNo = ?", objectNo).First }; return page; }); return master; }); Handle.GET("/checkout/payment/{?}", (long objectNo) => { RootPage master = (RootPage)Self.GET("/webshop/rootpage"); master.CurrentPage = Db.Scope(() => { var page = new PaymentMethodsPage { Html = "/Webshop/Partials/CheckoutPages/PaymentMethodsPage.html", Data = Db.SQL<Order>("SELECT i FROM Simplified.Ring6.\"Order\" i WHERE i.ObjectNo = ?", objectNo).First, ObjectNo = objectNo }; return page; }); return master; }); Handle.GET("/checkout/summary/{?}", (long objectNo) => { RootPage master = (RootPage)Self.GET("/webshop/rootpage"); master.CurrentPage = Db.Scope(() => { var page = new CheckoutSummaryPage(); var order = Db.SQL<Order>("SELECT i FROM Simplified.Ring6.\"Order\" i WHERE i.ObjectNo = ?", objectNo).First; page.Data = order; if (order.IsPayed) { page.Result.Message = "Order is processing. Your payment was paid."; page.Result.IsSuccessful = true; } else { page.Result.Message = "Order waiting for your payment."; page.Result.IsSuccessful = false; } return page; }); return master; }); Handle.GET("/webshop/settings", () => { RootPage master = (RootPage)Self.GET("/webshop/rootpage"); master.CurrentPage = Db.Scope(() => { var page = new SettingPage { Html = "/Webshop/Partials/Settings/SettingPage.html" }; page.LoadDefaultData(); return page; }); return master; }); }
public void LoadBasket() { _browser.WaitForAngular(); _browser.Navigate().GoToUrl(Url + "app/basket"); basketpage = new BasketPage(_browser); }
public static void ProceedToCheckout(BasketPage page, int howlongIcnwait) { Action <IWebElement> act0 = (elem) => elem.Click(); WaitingExtensions.WaitUntilElementAppears(act0, page.ProceedAnOrder, howlongIcnwait); }
void When_adding_the_selected_item_to_the_basket() { _actualPage = _homePage.AddToBasketByProductId(_expectedDotNetBlackAndWhiteMug.Id); }
public BasketPageStepsDefs(IObjectContainer objectContainer, BasketPage basketPage, Datamass datamass) { ObjectContainer = objectContainer; BasketPage = basketPage; Datamass = datamass; }
public BasketActions(IWebDriver driver) : base(driver) { _basket = new BasketPage(driver); }