Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions src/main/java/com/crowdar/examples/pages/AddressesPage.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
package com.crowdar.examples.pages;

import org.openqa.selenium.remote.RemoteWebDriver;
import org.testng.Assert;

public class AddressesPage extends PageBaseShopping{

public AddressesPage(RemoteWebDriver driver) {
super(driver);
this.url = "";
}

public void verifyAddressesPage(){
Assert.assertEquals(getText("addresses.h1_titlepage"), "ADDRESSES");
}

public void clickProceedToCheckout(){
click("addresses.proc_to_checkout_btn",true);
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
package com.crowdar.examples.pages;

import org.openqa.selenium.By;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.RemoteWebDriver;
import org.testng.Assert;

import java.util.List;

public class ArticlePreferencesPage extends PageBaseShopping{

private String SELECT_SIZE_ID = "group_1";

public ArticlePreferencesPage(RemoteWebDriver driver) {
super(driver);
this.url = "";
}

public void verifyArticlePage() {
waitPresence("articlePreferences.article_title");
Assert.assertTrue(isPresent("articlePreferences.article_title"), "El elemento no es visible");
}

public void setSize(String size){
selectOptionDropdownByText(By.id(SELECT_SIZE_ID), size);
}

public void setQuantity(String qtity){
setInput("articlePreferences.input_quantity",qtity,true);
}

public void setColor(String color){
List<WebElement> colorList = getElements("articlePreferences.list_colors");
for (WebElement colorElement: colorList) {
if(colorElement.getAttribute("name").toLowerCase().equals(color.toLowerCase())){
colorElement.click();
break;
}
}
}

public void clickButton(String boton){
switch (boton){
case "Add to cart": clickAddToCartButton(); break;
case "Proceed to checkout": clickProceedToCheckButton(); break;
}
}

public void clickAddToCartButton(){
if(isPresent("articlePreferences.add_to_cart_btn")){
click("articlePreferences.add_to_cart_btn");
}
}

public void clickProceedToCheckButton(){
if(isPresent("articlePreferences.proc_to_checkout_btn")){
click("articlePreferences.proc_to_checkout_btn");
}
}



}
35 changes: 35 additions & 0 deletions src/main/java/com/crowdar/examples/pages/LoginPage.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
package com.crowdar.examples.pages;

import org.openqa.selenium.By;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.RemoteWebDriver;
import org.testng.Assert;

public class LoginPage extends PageBaseShopping {

public LoginPage(RemoteWebDriver driver) {
super(driver);
this.url = ""; //here you can define the custom paths For example:"/search" --> www.googe.com/search
}

public void verifyLoginScreen() {
waitPresence("login.h3_title_form");
Assert.assertEquals(getText("login.h3_title_form"), "ALREADY REGISTERED?");
}

public void setEmail(String email){
if (isPresent("login.email_input")){
setInput("login.email_input",email);
}
}

public void setPassword(String pass){
if (isPresent("login.pass_input")){
setInput("login.pass_input",pass);

}

}


}
34 changes: 34 additions & 0 deletions src/main/java/com/crowdar/examples/pages/MyAccountPage.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
package com.crowdar.examples.pages;

import org.openqa.selenium.By;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.RemoteWebDriver;
import org.testng.Assert;

import java.util.List;

public class MyAccountPage extends PageBaseShopping {

public MyAccountPage(RemoteWebDriver driver) {
super(driver);
this.url = ""; //here you can define the custom paths For example:"/search" --> www.googe.com/search
}

public void verifyAccountScreen(){
waitPresence("account.h1_titlepage");
Assert.assertEquals(getElement("account.h1_titlepage").getText(), "MY ACCOUNT");
}


public void clickTabPage(String categoryNavName) {
List<WebElement> list_tabs = getElements("account.list_tabs");
for (WebElement tab : list_tabs) {
String tabName = tab.getText().toUpperCase();
if (tabName.toUpperCase().equals(categoryNavName.toUpperCase())) {
click(tab);
break;
}
}
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
package com.crowdar.examples.pages;

import org.openqa.selenium.remote.RemoteWebDriver;
import org.testng.Assert;

public class OrderConfirmationPage extends PageBaseShopping{

public OrderConfirmationPage(RemoteWebDriver driver) {
super(driver);
this.url="";
}

public void verifyOrderConfirmationPage(){
Assert.assertEquals(getText("orderConfirmation.h1_titlepage"), "ORDER CONFIRMATION");
}

}
23 changes: 23 additions & 0 deletions src/main/java/com/crowdar/examples/pages/OrderSummaryPage.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
package com.crowdar.examples.pages;

import org.openqa.selenium.remote.RemoteWebDriver;
import org.testng.Assert;

public class OrderSummaryPage extends PageBaseShopping{



public OrderSummaryPage(RemoteWebDriver driver) {
super(driver);
this.url="";
}

public void verifyOrderSummaryPage(){
Assert.assertEquals(getText("orderSummary.h1_titlepage"), "ORDER SUMMARY");
}

public void clickConfirmOrderBtn(){
click("orderSummary.confirm_order_btn");
}

}
14 changes: 14 additions & 0 deletions src/main/java/com/crowdar/examples/pages/PageBaseShopping.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
package com.crowdar.examples.pages;

import com.crowdar.core.pageObjects.PageBaseWeb;
import org.openqa.selenium.remote.RemoteWebDriver;

public class PageBaseShopping extends PageBaseWeb {

public PageBaseShopping(RemoteWebDriver driver) {
super(driver);
BASE_URL = "http://automationpractice.com";
}


}
32 changes: 32 additions & 0 deletions src/main/java/com/crowdar/examples/pages/PaymentMethodPage.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
package com.crowdar.examples.pages;

import org.openqa.selenium.By;
import org.openqa.selenium.remote.RemoteWebDriver;
import org.testng.Assert;

public class PaymentMethodPage extends PageBaseShopping{

public PaymentMethodPage(RemoteWebDriver driver) {
super(driver);
this.url = "";
}

public void verifyPaymentMethodPage(){
Assert.assertTrue(isPresent("payment.h1_titlepage"), "El elemento no es visible");
}



public void choosePaymentMethodBtn(String button){

switch (button.toUpperCase()){
case "BANK WIRE":
click("payment.bankwire_btn");
break;
case "CHECK":
click("payment.cheque_btn");
break;
}
}

}
47 changes: 47 additions & 0 deletions src/main/java/com/crowdar/examples/pages/ProductCategoryPage.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
package com.crowdar.examples.pages;

import org.openqa.selenium.By;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.RemoteWebDriver;
import org.testng.Assert;

import java.util.List;

public class ProductCategoryPage extends PageBaseShopping {

public ProductCategoryPage(RemoteWebDriver driver) {
super(driver);
this.url = ""; //here you can define the custom paths For example:"/search" --> www.googe.com/search
}


public void verifyTabPage(String categoryNavName) {

if (categoryNavName.toUpperCase().equals("WOMEN")) {
Assert.assertEquals(getText("productsCategoryPage.span_categoryname"), "Women");
} else {
if (categoryNavName.toUpperCase().equals("DRESSES")) {
Assert.assertEquals(getText("productsCategoryPage.span_categoryname"), "Dresses");
} else {
if (categoryNavName.toUpperCase().equals("T-SHIRTS")) {
Assert.assertEquals(getText("productsCategoryPage.span_categoryname"), "T-shirts");
}
}
}



}

public void clickArticle(String nomArticulo) {
List<WebElement> listArticlesElements = getElements("productsCategoryPage.list_link_articles");
for (WebElement articulo:listArticlesElements) {
if(nomArticulo.equals(articulo.getAttribute("title"))){//tomamos el atributo title
articulo.click();
break;
}

}
}

}
28 changes: 28 additions & 0 deletions src/main/java/com/crowdar/examples/pages/ShippingPage.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
package com.crowdar.examples.pages;

import org.openqa.selenium.By;
import org.openqa.selenium.remote.RemoteWebDriver;
import org.testng.Assert;

public class ShippingPage extends PageBaseShopping{

private String INPUT_CHECKBOX_TERMS_ID = "cgv";

public ShippingPage(RemoteWebDriver driver) {
super(driver);
this.url = "";
}

public void verifyShippingPage(){
Assert.assertEquals(getText("shipping.h1_titlepage"), "SHIPPING");
}

public void clickProceedToCheckout(){
click("shipping.proc_to_checkout_btn",false);
}

public void clickTerms(){
selectCheckbox(By.id(INPUT_CHECKBOX_TERMS_ID));
}

}
21 changes: 21 additions & 0 deletions src/main/java/com/crowdar/examples/pages/ShoppingCartPage.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
package com.crowdar.examples.pages;

import org.openqa.selenium.remote.RemoteWebDriver;
import org.testng.Assert;

public class ShoppingCartPage extends PageBaseShopping{

public ShoppingCartPage(RemoteWebDriver driver) {
super(driver);
this.url = ""; //here you can define the custom paths For example:"/search" --> www.googe.com/search
}

public void verifyShoppingCartPage() {
Assert.assertTrue(isPresent("shoppingCart.h1_titlepage"), "SHOPPING-CART SUMMARY");
}

public void clickProceedToCheckout(){
click("shoppingcart.proc_to_checkout_btn", true);
}

}
Loading