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
27 changes: 27 additions & 0 deletions actions/AddOnspageaction.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
from pages.AddOnspage import AddOnspage
from actions.BaseAction import BaseAction
from selenium.webdriver import ActionChains
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC


class AddOnsaction(BaseAction):
def __init__(self,driver):
super().__init__(driver)
self.adp=AddOnspage(driver)

def clickAddOns(self):
addons = self.wait.until(EC.visibility_of_element_located(self.adp.AddOns))
ActionChains(self.driver).move_to_element(addons).perform()
def clickdesigns(self):
self.click(self.adp.designs)
def clickDrawerleft(self):
self.scroll_into_view(self.adp.Drawerleft)
self.click(self.adp.Drawerleft)
def leftpanel(self):
assert self.is_displayed(self.adp.topcategories)
def clickDrawerright(self):
self.scroll_into_view(self.adp.Drawerright)
self.click(self.adp.Drawerright)
def viewrightpanel(self):
assert self.is_displayed(self.adp.rightpanel)
2 changes: 1 addition & 1 deletion actions/ProductCompareAction.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
from actions.BaseAction import BaseAction
from pages.ComaprePage import ComparePage
from pages.ComparePage import ComparePage


class ProductCompareAction(BaseAction):
Expand Down
Binary file modified data_provider/DataProvider.xlsx
Binary file not shown.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Delete this file

Empty file.
42 changes: 42 additions & 0 deletions pages/AddOnspage.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
from selenium.webdriver.common.by import By
from pages.BasePage import BasePage


class AddOnspage(BasePage):
def __init__(self, driver):
super().__init__(driver)

AddOns=By.XPATH,"//span[normalize-space()='AddOns']"
designs=By.XPATH,"//span[normalize-space()='Designs']"
Drawerleft=By.XPATH,"//div[@id='entry_215006']/child::a"
topcategories=By.XPATH,"//div[@id='mz-component-1626147655']/child::h5"
Drawerright=By.XPATH,"//div[@id='entry_215007']/child::a"
rightpanel=By.XPATH,"//div[@id='entry_215089']"




























File renamed without changes.
43 changes: 43 additions & 0 deletions tests/test_addons.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
from actions.AddOnspageaction import AddOnsaction
import pytest
from utils import loggerCreator
from utils.configReader import ConfigReader


logger = loggerCreator.get_logger(__name__)

@pytest.mark.Jothika
class TestAddOns:

def test_addonsdrawerleft(self,driver):
drv, wait = driver
self.adpa=AddOnsaction(drv)

url=ConfigReader.get_url()
logger.info("Application launched successfully")
self.adpa.clickAddOns()
logger.info("Moved to Addons")
self.adpa.clickdesigns()
logger.info("Clicked on designs")
self.adpa.clickDrawerleft()
logger.info("Selected drawerleft")
self.adpa.leftpanel()
logger.info("left panel is displayed")

def test_drawerRight(self,driver):
drv, wait = driver
self.adpa=AddOnsaction(drv)

url=ConfigReader.get_url()
logger.info("Application launched successfully")
self.adpa.clickAddOns()
logger.info("Moved to Addons")
self.adpa.clickdesigns()
logger.info("Clicked on designs")
self.adpa.clickDrawerright()
logger.info("Clicked on drawer right")
self.adpa.viewrightpanel()
logger.info("Right panel appeared")



89 changes: 89 additions & 0 deletions tests/test_addreview.py
Original file line number Diff line number Diff line change
Expand Up @@ -63,5 +63,94 @@ def test_withrating(self,driver,rating,expectedMessage):
self.arpa.warningmsg(expectedMessage)
logger.info("Invalid review submitted successfully")

@pytest.mark.parametrize(
"rating,name,feedback,expectedMessage",
get_data(
"data_provider/DataProvider.xlsx",
"AddReview-withoutname",
),
)

def test_withoutname(self,driver,rating,name,feedback,expectedMessage):
drv, wait = driver
self.arpa=AddReviewpageaction(drv)
url=ConfigReader.get_url()
logger.info("Application launch is successful")
self.arpa.selectproduct()
logger.info("Selected the product")
self.arpa.moveto_review()
logger.info("Found review page")
self.arpa.selectrating(rating)
logger.info("Selected Rating")
self.arpa.enterName(name)
logger.info("Entered empty name")
self.arpa.enterfeedback(feedback)
logger.info("Entered feedback")
self.arpa.clicksubmit()
logger.info("Submitted review")
self.arpa.warningmsg(expectedMessage)
logger.info("Invalid review withoutname submitted successfully")


@pytest.mark.parametrize(
"rating,name,expectedMessage",
get_data(
"data_provider/DataProvider.xlsx",
"AddReview-withoutfeedback",
),
)

def test_addingreviewwithoutfeedback(self,driver,rating,name,expectedMessage):
drv, wait = driver
self.arpa=AddReviewpageaction(drv)
url=ConfigReader.get_url()
logger.info("Application launch is successful")
self.arpa.selectproduct()
logger.info("Selected the product")
self.arpa.moveto_review()
logger.info("Found review page")
self.arpa.selectrating(rating)
logger.info("Selected Rating")
self.arpa.enterName(name)
logger.info("Entered name")

self.arpa.clicksubmit()
logger.info("Submitted review")
self.arpa.warningmsg(expectedMessage)
logger.info("Invalid review withoutfeedback submitted successfully")


@pytest.mark.parametrize(
"name,feedback,expectedMessage",
get_data(
"data_provider/DataProvider.xlsx",
"AddReview-withoutrating",
),
)

def test_reviewwithoutrating(self,driver,name,feedback,expectedMessage):
drv, wait = driver
self.arpa=AddReviewpageaction(drv)
url=ConfigReader.get_url()
logger.info("Application launch is successful")
self.arpa.selectproduct()
logger.info("Selected the product")
self.arpa.moveto_review()
logger.info("Found review page")

self.arpa.enterName(name)
logger.info("Entered empty name")
self.arpa.enterfeedback(feedback)
logger.info("Entered feedback")
self.arpa.clicksubmit()
logger.info("Submitted review")
self.arpa.warningmsg(expectedMessage)
logger.info("Invalid review withoutrating submitted successfully")








Loading