diff --git a/Nagaytseva/src/test/java/DownloadDoc.java b/Nagaytseva/src/test/java/DownloadDoc.java new file mode 100644 index 0000000..64fd08c --- /dev/null +++ b/Nagaytseva/src/test/java/DownloadDoc.java @@ -0,0 +1,69 @@ +import context.ChromeContext; +import context.Context; +import org.junit.jupiter.api.AfterAll; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.Test; +import org.openqa.selenium.Dimension; +import org.openqa.selenium.support.PageFactory; +import page.PageGosCertification; +import page.PageMain; +import page.PagePriceList; +import page.PageProgrammProduct; + +import java.io.File; + +import static java.security.spec.MGF1ParameterSpec.SHA1; +import static org.junit.jupiter.api.Assertions.assertEquals; + +public class DownloadDoc { + private final static String APP_URL = "https://1c.ru/"; + + private static Context context; + private String tmpPath; + @BeforeAll + public static void setup() { + context = new ChromeContext(); + context.start(); + context.getDriver().manage().window().setSize(new Dimension(1600, 900)); + } + + @AfterAll + public static void quit() { + context.close(); + } + + + @Test + public void testDownloandZip() throws InterruptedException { + context.getDriver().get(APP_URL); + PageMain page = PageFactory.initElements(context.getDriver(), PageMain.class); + page.clickFooterMenuItem(4); + PagePriceList pagePriceList = PageFactory.initElements(context.getDriver(), PagePriceList.class); + String fileName = pagePriceList.getFileName(); + pagePriceList.clickBtn(); + + Assertions.assertTrue(pagePriceList.isFileDownloaded(fileName)); + + } + @Test + public void testDownloandOpenChrome() throws InterruptedException { + context.getDriver().get(APP_URL); + PageMain page = PageFactory.initElements(context.getDriver(), PageMain.class); + page.clickFooterMenuItem(3); + PageProgrammProduct pageProgrammProduct = PageFactory.initElements(context.getDriver(), PageProgrammProduct.class); + pageProgrammProduct.clickLeftMenu(5); + PageGosCertification pageGosCertification = PageFactory.initElements(context.getDriver(),PageGosCertification.class); + String fileName = pageGosCertification.getFileNameImg(2); + pageGosCertification.clickiImg(2); + + + + + Assertions.assertTrue(pageGosCertification.checkOpenImg(fileName)); + + } + + + +} diff --git a/Nagaytseva/src/test/java/FilterTest.java b/Nagaytseva/src/test/java/FilterTest.java new file mode 100644 index 0000000..2abf487 --- /dev/null +++ b/Nagaytseva/src/test/java/FilterTest.java @@ -0,0 +1,132 @@ +import context.ChromeContext; +import context.Context; +import org.junit.jupiter.api.AfterAll; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.Test; +import org.openqa.selenium.Dimension; +import org.openqa.selenium.support.PageFactory; +import page.*; + +import java.text.ParseException; + +public class FilterTest { + private final static String APP_URL = "https://1c.ru/"; + + private static Context context; + + @BeforeAll + public static void setup() { + context = new ChromeContext(); + context.start(); + context.getDriver().manage().window().setSize(new Dimension(1600, 900)); + } + + @AfterAll + public static void quit() { + context.close(); + } + + @Test + public void testSiteSearchEnter() { + context.getDriver().get(APP_URL); + + PageMain page = PageFactory.initElements(context.getDriver(), PageMain.class); + page.clickButtomNews(); + PageNews pageNews = PageFactory.initElements(context.getDriver(),PageNews.class); + String queryString = "Предприятие"; + pageNews.insertSearchText(queryString); + + pageNews.submitSearch(); + + Assertions.assertTrue(pageNews.checkSearch()); + } + @Test + public void testSiteSearchBtn() { + context.getDriver().get(APP_URL); + + PageMain page = PageFactory.initElements(context.getDriver(), PageMain.class); + page.clickButtomNews(); + PageNews pageNews = PageFactory.initElements(context.getDriver(),PageNews.class); + String queryString = "Предприятие"; + pageNews.insertSearchText(queryString); + pageNews.clickBtmSearch(); + + Assertions.assertTrue(pageNews.checkSearch()); + } + @Test + public void testFilterParametrs() { + context.getDriver().get(APP_URL); + + PageMain page = PageFactory.initElements(context.getDriver(), PageMain.class); + page.clickTopMenuItem(0); + + PageSearch page1 = PageFactory.initElements(context.getDriver(), PageSearch.class); + page1.clickTopMenu(); + + PageFirm1C pageFirm1C = PageFactory.initElements(context.getDriver(), PageFirm1C.class); + pageFirm1C.clickLeftMenu(18); + + PageUserCertification pageUserCertification = PageFactory.initElements(context.getDriver(), PageUserCertification.class); + + pageUserCertification.clickFilterCountry(1); + pageUserCertification.clickFilterCity(); + + Assertions.assertTrue(pageUserCertification.checkFilterCity()); + } + @Test + public void testSortCity() { + context.getDriver().get(APP_URL); + + PageMain page = PageFactory.initElements(context.getDriver(), PageMain.class); + page.clickTopMenuItem(0); + + PageSearch pageSearch = PageFactory.initElements(context.getDriver(), PageSearch.class); + pageSearch.clickTopMenu(); + + PageFirm1C pageFirm1C = PageFactory.initElements(context.getDriver(), PageFirm1C.class); + pageFirm1C.clickSystemManagment(); + + PageSystemManagment page3 = PageFactory.initElements(context.getDriver(), PageSystemManagment.class); + page3.clickLinkText(); + PageListFirm pageListFirm = PageFactory.initElements(context.getDriver(), PageListFirm.class); + pageListFirm.clickCity(); + Assertions.assertTrue(pageListFirm.checkSortCity()); + } + + @Test + public void testSearchByDate() throws ParseException { + context.getDriver().get(APP_URL); + + PageMain page = PageFactory.initElements(context.getDriver(), PageMain.class); + page.clickButtomNews(); + PageNews pageNews = PageFactory.initElements(context.getDriver(),PageNews.class); + String queryString = "Предприятие"; + pageNews.insertSearchText(queryString); + + pageNews.clickSelectionDate(7); + pageNews.clickSelectionDateL(26); + + + pageNews.clickBtmSearch(); + + Assertions.assertTrue(pageNews.checkSearchParametrsFirstLastDay()); + } + @Test + public void testSearchByDateL() throws ParseException { + context.getDriver().get(APP_URL); + + PageMain page = PageFactory.initElements(context.getDriver(), PageMain.class); + page.clickButtomNews(); + PageNews pageNews = PageFactory.initElements(context.getDriver(),PageNews.class); + String queryString = "1с"; + pageNews.insertSearchText(queryString); + + pageNews.clickSelectionDateL(26); + + pageNews.clickBtmSearch(); + Assertions.assertTrue(pageNews.checkSearchParametrsLastDay()); + + } + +} diff --git a/Nagaytseva/src/test/java/FormMakeRequest.java b/Nagaytseva/src/test/java/FormMakeRequest.java new file mode 100644 index 0000000..f76e70e --- /dev/null +++ b/Nagaytseva/src/test/java/FormMakeRequest.java @@ -0,0 +1,47 @@ +import context.ChromeContext; +import context.Context; +import org.junit.jupiter.api.AfterAll; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.Test; +import org.openqa.selenium.Dimension; +import org.openqa.selenium.support.PageFactory; +import page.PageMain; +import page.PageNews; +import page.PagePartnersFirm; + +public class FormMakeRequest { + private final static String APP_URL = "https://1c.ru/partners-pp/rentclaim.jsp"; + + private static Context context; + + @BeforeAll + public static void setup() { + context = new ChromeContext(); + context.start(); + context.getDriver().manage().window().setSize(new Dimension(1600, 900)); + } + + @AfterAll + public static void quit() { + context.close(); + } + @Test + public void testMakeRequest(){ + context.getDriver().get(APP_URL); + + + PagePartnersFirm pagePartnersFirm = PageFactory.initElements(context.getDriver(),PagePartnersFirm.class); + String fio = "Ekaterina"; + String email = "test@yandex.ru"; + String phone = "89756523322"; + String inn = "745844556856"; + pagePartnersFirm.insertSearchText(0,inn,3,phone,4,email,5,fio); + + pagePartnersFirm.clickCheckBox(6,10,21,31,33); + pagePartnersFirm.clickBtnRequest(); + + //pagePartnersFirm.clickBtmSearch(); + Assertions.assertTrue(pagePartnersFirm.displayForm()); + } +} diff --git a/Nagaytseva/src/test/java/FormSubscribeTest.java b/Nagaytseva/src/test/java/FormSubscribeTest.java new file mode 100644 index 0000000..ddd26b3 --- /dev/null +++ b/Nagaytseva/src/test/java/FormSubscribeTest.java @@ -0,0 +1,43 @@ +import context.ChromeContext; +import context.Context; +import org.junit.jupiter.api.AfterAll; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.Test; +import org.openqa.selenium.Dimension; +import org.openqa.selenium.support.PageFactory; +import page.BrowserWindow; +import page.PageMain; + +import java.util.Random; + +public class FormSubscribeTest { + private final static String APP_URL = "http://1c.ru/news/subscr.jsp"; + + private static Context context; + + @BeforeAll + public static void setup() { + context = new ChromeContext(); + context.start(); + context.getDriver().manage().window().setSize(new Dimension(1600, 900)); + } + + @AfterAll + public static void quit() { + context.close(); + } + @Test + public void testFormSubscribe() { + context.getDriver().get(APP_URL); + + Random random = new Random(); + BrowserWindow browserWindow= PageFactory.initElements(context.getDriver(), BrowserWindow.class); + String queryString = "name"+random.nextInt(100)+"@yandex.ru"; + browserWindow.insertText(queryString); + + browserWindow.clickSubscribe(); + Assertions.assertTrue(browserWindow.subscribeTrue()); + } + +} diff --git a/Nagaytseva/src/test/java/MenuNavigation.java b/Nagaytseva/src/test/java/MenuNavigation.java index 968b90f..0360dd5 100644 --- a/Nagaytseva/src/test/java/MenuNavigation.java +++ b/Nagaytseva/src/test/java/MenuNavigation.java @@ -6,8 +6,7 @@ import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; import org.openqa.selenium.Dimension; import org.openqa.selenium.support.PageFactory; -import page.PageMenu; -import page.SearchPage; +import page.*; public class MenuNavigation { private final static String APP_URL = "https://1c.ru/"; @@ -27,12 +26,144 @@ public class MenuNavigation { } @Test - public void testResultPageHeader() { + public void testTopMenuDropDownList() { context.getDriver().get(APP_URL); - PageMenu page = PageFactory.initElements(context.getDriver(), PageMenu.class); + PageMain page = PageFactory.initElements(context.getDriver(), PageMain.class); - page.clickUsersLink(); - Assertions.assertTrue(page.menuMin()); + page.clickHeadMenuList(); + Assertions.assertTrue(page.menuList()); + } + @Test + public void testTopMenuOutLink() { + context.getDriver().get(APP_URL); + + PageMain page = PageFactory.initElements(context.getDriver(), PageMain.class); + page.clickMenuLink(); + + Assertions.assertTrue(page.menuOutLink()); + } + @Test + public void testFooterMenu() { + context.getDriver().get(APP_URL); + + PageMain page = PageFactory.initElements(context.getDriver(), PageMain.class); + page.clickFooterMenuItem(0); + PageFirm1C pageFirm1C = PageFactory.initElements(context.getDriver(), PageFirm1C.class); + + Assertions.assertTrue(pageFirm1C.footerMenuList()); + } + @Test + public void testLeftMenuOutLink() { + context.getDriver().get(APP_URL); + + PageMain page = PageFactory.initElements(context.getDriver(), PageMain.class); + page.clickTopMenuItem(0); + + PageSearch page1 = PageFactory.initElements(context.getDriver(), PageSearch.class); + page1.clickLeftMenu(0); + + Assertions.assertTrue(page1.searchPage()); + } + @Test + public void testPagination() { + context.getDriver().get(APP_URL); + + PageMain page = PageFactory.initElements(context.getDriver(), PageMain.class); + page.clickTopMenuItem(0); + + PageSearch page1 = PageFactory.initElements(context.getDriver(), PageSearch.class); + page1.clickTopMenu(); + + PageFirm1C page2 = PageFactory.initElements(context.getDriver(), PageFirm1C.class); + page2.clickSystemManagment(); + + PageSystemManagment page3 = PageFactory.initElements(context.getDriver(), PageSystemManagment.class); + page3.clickLeftMenuListPagination(); + page3.clickPaginationElement(); + Assertions.assertTrue(page3.paginationCheck()); + } + + @Test + public void testButtomNews() { + context.getDriver().get(APP_URL); + + PageMain page = PageFactory.initElements(context.getDriver(), PageMain.class); + page.clickButtomNews(); + + PageNews pageNews = PageFactory.initElements(context.getDriver(),PageNews.class); + + Assertions.assertTrue(pageNews.disposeBlockNews()); + } + @Test + public void testLinkNews() { + context.getDriver().get(APP_URL); + + PageMain page = PageFactory.initElements(context.getDriver(), PageMain.class); + String str = page.getTextTitleNews(); + page.clickLinkNews(); + + + PageInformationRelease pageInf = PageFactory.initElements(context.getDriver(),PageInformationRelease.class); + + Assertions.assertTrue(pageInf.displayNewsInformationTrue(str)); + } + + @Test + public void testDropDownListVacancy() { + context.getDriver().get(APP_URL); + + PageMain page = PageFactory.initElements(context.getDriver(), PageMain.class); + page.clickTopMenuItem(0); + + PageSearch page1 = PageFactory.initElements(context.getDriver(), PageSearch.class); + page1.clickTopMenu(); + + PageFirm1C page2 = PageFactory.initElements(context.getDriver(), PageFirm1C.class); + page2.clickVacancy(); + page2.clickVacancyLink(); + Assertions.assertTrue(page2.disposalVacancyList()); + } + @Test + public void testBtmBackNews() { + context.getDriver().get(APP_URL); + + PageMain page = PageFactory.initElements(context.getDriver(), PageMain.class); + page.clickLinkNews5(); + + PageInformationRelease pageInf = PageFactory.initElements(context.getDriver(),PageInformationRelease.class); + pageInf.clickBtmBack(); + + Assertions.assertTrue(pageInf.disposeMainInformation()); + } + @Test + public void testBtmNextNews() { + context.getDriver().get(APP_URL); + + PageMain page = PageFactory.initElements(context.getDriver(), PageMain.class); + page.clickLinkNews5(); + + PageInformationRelease pageInf = PageFactory.initElements(context.getDriver(),PageInformationRelease.class); + pageInf.clickBtmNext(); + + Assertions.assertTrue(pageInf.disposeMainInformation()); + } + @Test + public void testPopUpWindow() { + context.getDriver().get(APP_URL); + + PageMain page = PageFactory.initElements(context.getDriver(), PageMain.class); + page.clickTopMenuItem(0); + + PageSearch page1 = PageFactory.initElements(context.getDriver(), PageSearch.class); + page1.clickTopMenu(); + + PageFirm1C page2 = PageFactory.initElements(context.getDriver(), PageFirm1C.class); + page2.clickSystemManagment(); + + PageSystemManagment page3 = PageFactory.initElements(context.getDriver(), PageSystemManagment.class); + page3.clickLeftMenuListWindiw(); + page3.clickPopUpWindowElement(); + Assertions.assertTrue(page3.popUpWindowCheck()); } } diff --git a/Nagaytseva/src/test/java/page/BrowserWindow.java b/Nagaytseva/src/test/java/page/BrowserWindow.java new file mode 100644 index 0000000..2144c80 --- /dev/null +++ b/Nagaytseva/src/test/java/page/BrowserWindow.java @@ -0,0 +1,35 @@ +package page; + +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.support.FindBy; + +import java.util.List; + +public class BrowserWindow { + WebDriver driver; + @FindBy(xpath= "//*[@id=\"email\"]") + private WebElement textFieldEmail; + @FindBy(className = "btn") + private WebElement btnSubscribe; + @FindBy(css = ".widebox h3") + private List text; + public BrowserWindow(WebDriver driver) { + this.driver = driver; + } + public void insertText(String text){ + + textFieldEmail.sendKeys(text); + } + public void clickSubscribe(){ + + btnSubscribe.click(); + } + public boolean subscribeTrue(){ + if(text.get(1).getText().contains("Ваши данные приняты")){ + return true; + } +return false; + + } +} diff --git a/Nagaytseva/src/test/java/page/InformersTest.java b/Nagaytseva/src/test/java/page/InformersTest.java new file mode 100644 index 0000000..54a359f --- /dev/null +++ b/Nagaytseva/src/test/java/page/InformersTest.java @@ -0,0 +1,42 @@ +package page; + +import context.ChromeContext; +import context.Context; +import org.junit.jupiter.api.AfterAll; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.Test; +import org.openqa.selenium.Dimension; +import org.openqa.selenium.support.PageFactory; + +public class InformersTest { + // http://1c.ru/news/informer.htm + private final static String APP_URL = "http://1c.ru/news/informer.htm"; + + private static Context context; + + @BeforeAll + public static void setup() { + context = new ChromeContext(); + context.start(); + context.getDriver().manage().window().setSize(new Dimension(1600, 900)); + } + + @AfterAll + public static void quit() { + context.close(); + } + @Test + public void testInformer(){ + context.getDriver().get(APP_URL); + + + PageInformers pageInformers = PageFactory.initElements(context.getDriver(),PageInformers.class); + String count = "5"; + pageInformers.insertText(count); + + pageInformers.clickBtn(); + + Assertions.assertTrue(pageInformers.checkInformer()); + } +} diff --git a/Nagaytseva/src/test/java/page/PageFirm1C.java b/Nagaytseva/src/test/java/page/PageFirm1C.java new file mode 100644 index 0000000..5fd149a --- /dev/null +++ b/Nagaytseva/src/test/java/page/PageFirm1C.java @@ -0,0 +1,54 @@ +package page; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.support.FindBy; +import org.openqa.selenium.support.ui.ExpectedConditions; + +import java.util.List; + +public class PageFirm1C { + WebDriver driver; + + @FindBy(css = ".sidebar-menu li") + private List itemMenu; + + @FindBy(xpath= "//*[@id=\"main_field\"]/h4[1]/a") + private WebElement linlVacancy; + + + private static int systemManagmentMenuElementNumber = 5; + public PageFirm1C (WebDriver driver) { + this.driver = driver; + } + + public void clickSystemManagment(){ + itemMenu.get(systemManagmentMenuElementNumber).click(); + } + + public void clickLeftMenu(int number){ + itemMenu.get(number).click(); + } + public void clickVacancy(){ + itemMenu.get(4).click(); + } + public void clickVacancyLink(){ + linlVacancy.click(); + try { + Thread.sleep(5000); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + + + public boolean disposalVacancyList(){ + return driver.findElement(By.cssSelector("#dept6")).isDisplayed(); + } + public boolean footerMenuList(){ + return driver.findElement(By.cssSelector(".widebox")).isDisplayed(); + } + + +} diff --git a/Nagaytseva/src/test/java/page/PageGosCertification.java b/Nagaytseva/src/test/java/page/PageGosCertification.java new file mode 100644 index 0000000..131b002 --- /dev/null +++ b/Nagaytseva/src/test/java/page/PageGosCertification.java @@ -0,0 +1,44 @@ +package page; + +import org.junit.jupiter.api.Assertions; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.support.FindBy; + +import java.io.File; +import java.util.List; + +public class PageGosCertification { + WebDriver driver; + + @FindBy(css = ".widebox a") + private List elementImg; + + + public PageGosCertification(WebDriver driver) { + this.driver = driver; + } + public void clickiImg(int number){ + + elementImg.get(number).click(); + + } + public String getFileNameImg(int elementNumber){ + String fileName = elementImg.get(elementNumber).getAttribute("href"); + fileName = fileName.substring(fileName.lastIndexOf("/")+1); + return fileName; + } + + public boolean checkOpenImg(String str) { + boolean check = false; + File f = new File (str); + String s = driver.getCurrentUrl(); + if(s.contains(str)) + check = true; + return check; + + } + + + +} diff --git a/Nagaytseva/src/test/java/page/PageInformationRelease.java b/Nagaytseva/src/test/java/page/PageInformationRelease.java new file mode 100644 index 0000000..3640fe8 --- /dev/null +++ b/Nagaytseva/src/test/java/page/PageInformationRelease.java @@ -0,0 +1,42 @@ +package page; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.support.FindBy; +import org.openqa.selenium.support.PageFactory; + +public class PageInformationRelease { + WebDriver driver; + + @FindBy(className= "previous") + private WebElement elementBackBtmNews; + + @FindBy(className= "next") + private WebElement elementNextBtmNews; + + @FindBy(id= "pagecontentforsolr") + private WebElement content; + + @FindBy(xpath= "//*[@id=\"pagecontentforsolr\"]/div[4]") + private WebElement title; + public PageInformationRelease(WebDriver driver) { + this.driver = driver; + } + + public void clickBtmBack(){ + elementBackBtmNews.click(); + } + public void clickBtmNext(){ + elementBackBtmNews.click(); + } + public boolean disposeMainInformation() { + + return content.isDisplayed(); + } + public boolean displayNewsInformationTrue(String str){ + + + return title.getText().contains(str); + } +} diff --git a/Nagaytseva/src/test/java/page/PageInformers.java b/Nagaytseva/src/test/java/page/PageInformers.java new file mode 100644 index 0000000..c64f7af --- /dev/null +++ b/Nagaytseva/src/test/java/page/PageInformers.java @@ -0,0 +1,54 @@ +package page; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.support.FindBy; + +import java.util.List; + +public class PageInformers { + WebDriver driver; + + @FindBy(xpath = "//*[@id=\"pagecontentforsolr\"]/table[1]/tbody/tr/td[2]/form/textarea") + private WebElement elementCode; + + + @FindBy(name = "limit") + private WebElement textField; + + @FindBy(xpath = "//*[@id=\"pagecontentforsolr\"]/table[1]/tbody/tr/td[2]/form/table/tbody/tr[4]/td/input") + private WebElement formBtn; + + + + + public PageInformers(WebDriver driver) { + this.driver = driver; + } + public void insertText(String text){ + textField.clear(); + textField.sendKeys(text); + } + + private String strCode; + private int countItem; + public void clickBtn() { + + formBtn.click(); + strCode = elementCode.getAttribute("value"); + } + + + + public boolean checkInformer(){ + + boolean check = false; + String strTexyField = textField.getAttribute("value"); + String strCode1 = strCode; + + if(strCode1.contains(strTexyField)) + check=true; + return check; + } +} diff --git a/Nagaytseva/src/test/java/page/PageListFirm.java b/Nagaytseva/src/test/java/page/PageListFirm.java new file mode 100644 index 0000000..6d6e41d --- /dev/null +++ b/Nagaytseva/src/test/java/page/PageListFirm.java @@ -0,0 +1,41 @@ +package page; + +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.support.FindBy; + +import java.util.List; + +public class PageListFirm { + WebDriver driver; + + @FindBy(css = ".content select") + private WebElement selectListCity; + @FindBy(xpath = "//*[@id=\"pagecontentforsolr\"]/table/tbody/tr[1]/th[2]/select/option[17]") + private WebElement itemListCity; + @FindBy(css="tr") + private List tr; + + public PageListFirm(WebDriver driver) { + this.driver = driver; + } + public void clickCity(){ + selectListCity.click(); + itemListCity.click(); + + try { + Thread.sleep(5000); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + public boolean checkSortCity(){ + boolean checkSearch = false; + int count = tr.size(); + for(int i = 0; i menuElements; + + @FindBy(css = ".footer-container .span6 .row ul a") + private List footerMenuElements; + + @FindBy(xpath = "/html/body/div[1]/div[2]/div[3]/div[1]/a") + private WebElement buttomNewsElements; + + @FindBy(css = ".span6 dl a") + private List linkElement; + + @FindBy(className = "subscribe") + private WebElement linkElementSubscribe; + + public PageMain(WebDriver driver) { + this.driver = driver; + } + public void clickHeadMenuList() { + driver.findElement(By.className("droppable")).findElement(By.tagName("span")).click(); + try { + Thread.sleep(5000); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + public void clickMenuLink() { + menuElementsList.click(); + try { + Thread.sleep(5000); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + public void clickTopMenuItem(int number){ + + menuElements.get(number).click(); + } + public void clickFooterMenuItem(int number){ + footerMenuElements.get(number).click(); + } + public void clickButtomNews(){ + + buttomNewsElements.click(); + } + public void clickLinkNews(){ + + linkElement.get(3).click(); + + } + public void clickLinkNews5(){ + + linkElement.get(5).click(); + try { + Thread.sleep(5000); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + public String getTextTitleNews(){ + String str = linkElement.get(3).getText(); + return str; + } + + public boolean menuList(){ + return !(driver.findElement(By.xpath("/html/body/div[1]/div[1]/div/div[2]/div[2]/ul/div/li[1]/a")).isDisplayed()); + + } + + public boolean menuOutLink() { + return driver.findElement(By.cssSelector(".left-content")).isDisplayed(); + } + + +} diff --git a/Nagaytseva/src/test/java/page/PageMenu.java b/Nagaytseva/src/test/java/page/PageMenu.java deleted file mode 100644 index 7ab88e1..0000000 --- a/Nagaytseva/src/test/java/page/PageMenu.java +++ /dev/null @@ -1,27 +0,0 @@ -package page; - -import org.openqa.selenium.By; -import org.openqa.selenium.WebDriver; - -public class PageMenu { - WebDriver driver; - - public PageMenu(WebDriver driver) { - this.driver = driver; - } - public void clickUsersLink() { - driver.findElement(By.className("droppable")).findElement(By.tagName("span")).click(); - try { - Thread.sleep(5000); - } catch (InterruptedException e) { - e.printStackTrace(); - } - } - public boolean menuMin(){ - return !(driver.findElement(By.xpath("/html/body/div[1]/div[1]/div/div[2]/div[2]/ul/div/li[1]/a")).isDisplayed()); - - } -/* public void clickUsersLink() { - driver.findElement(By.className("droppable")).click(); - }*/ -} diff --git a/Nagaytseva/src/test/java/page/PageNews.java b/Nagaytseva/src/test/java/page/PageNews.java new file mode 100644 index 0000000..74ff03a --- /dev/null +++ b/Nagaytseva/src/test/java/page/PageNews.java @@ -0,0 +1,148 @@ +package page; + +import org.openqa.selenium.By; +import org.openqa.selenium.Keys; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.support.FindBy; + +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.List; +import java.util.Locale; + +public class PageNews { + WebDriver driver; + + @FindBy(name= "query") + private WebElement elementEntryField; + @FindBy(className= "btn") + private WebElement elementBtnSearch; + @FindBy(className= "next") + private WebElement elementNextBtmNews; + @FindBy(id= "date_from") + private WebElement elementDateFrom; + @FindBy(css= " .table-condensed td") + private List elementDateNumber; + @FindBy(id= "date_to") + private WebElement elementDateTo; + @FindBy(css= ".widebox li") + private List elementListNews; + @FindBy(className= "datepicker-switch") + private WebElement elementMonth; + @FindBy(className= "prev") + private WebElement elementBack; + + public PageNews(WebDriver driver) { + this.driver = driver; + } + + public void insertSearchText(String text){ + + + elementEntryField.sendKeys(text); + + } + private int strDayFirst; + private int strDayLast; + private String strMonthFirst; + private String strMonthLast; + public void clickBtmSearch(){ + elementBtnSearch.click(); + } + public void submitSearch(){ + elementEntryField.sendKeys(Keys.RETURN); + try { + Thread.sleep(5000); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + public void clickSelectionDate(int number1){ + elementDateFrom.click(); + elementBack.click(); + elementDateNumber.get(number1).click(); + strDayFirst = Integer.parseInt(elementDateNumber.get(number1).getText()); + strMonthFirst = elementMonth.getText(); + + + + } + public void clickSelectionDateL( int number2){ + + elementDateTo.click(); + elementDateNumber.get(number2).click(); + strDayLast = Integer.parseInt(elementDateNumber.get(number2).getText()); + strMonthLast =elementMonth.getText(); + driver.findElement(By.className("cats")).click(); + + + } + + public boolean disposeBlockNews() { + return driver.findElement(By.className("redhead")).isDisplayed(); + } + + + + + public boolean checkSearchParametrsFirstLastDay() throws ParseException { + boolean checkSearch = false; + int count = elementListNews.size(); + String firstDayNewsList = elementListNews.get(0).getText().substring(0,elementListNews.get(0).getText().indexOf("\n")); + String enDayNewsList = elementListNews.get(count-1).getText().substring(0,elementListNews.get(count-1).getText().indexOf("\n")); + String fDayNumber = elementDateFrom.getAttribute("value"); + String eDayNumber = elementDateTo.getAttribute("value"); + SimpleDateFormat newDateFormat = new SimpleDateFormat("dd.MM.yyyy", Locale.getDefault()); + SimpleDateFormat oldDateFormat = new SimpleDateFormat("dd MMMM yyyy", Locale.getDefault()); + + Date dateFirstList = oldDateFormat.parse(firstDayNewsList); + Date dateEndList = oldDateFormat.parse(enDayNewsList); + Date dateFDay = newDateFormat.parse(fDayNumber); + Date dateEDay = newDateFormat.parse(eDayNumber); + + if(dateFirstList.before(dateEDay)|| dateFirstList.equals(dateEDay)) + { + if(dateEndList.after(dateFDay) ||dateEndList.equals(dateFDay)) + checkSearch = true; + } + + + + return checkSearch; + } + public boolean checkSearchParametrsLastDay() throws ParseException { + boolean checkSearch = false; + String firstDayNewsList = elementListNews.get(0).getText(); + String dateTo = elementDateTo.getAttribute("value"); + + String dateInString = firstDayNewsList.substring(0,firstDayNewsList.indexOf("\n"));//создаю строку по заданному формату + String oldDateString = dateInString ; + SimpleDateFormat newDateFormat = new SimpleDateFormat("dd.MM.yyyy", Locale.getDefault()); + SimpleDateFormat oldDateFormat = new SimpleDateFormat("dd MMMM yyyy", Locale.getDefault()); + + Date date = oldDateFormat.parse(oldDateString); + String result = newDateFormat.format(date); + + Date date1 = newDateFormat.parse(dateTo); + + if(date1.after(date) || date1.equals(date)){ + checkSearch = true; + } + + + return checkSearch; + } + public boolean checkSearch(){ + boolean checkSearch = false; + int count = elementListNews.size(); + String strSearch = elementEntryField.getAttribute("value"); + for(int i=0; i elementInput; + + @FindBy(xpath = "//*[@id=\"pagecontentforsolr\"]/div/form/span[7]/span") + private WebElement elementSpan; + + public PagePartnersFirm(WebDriver driver) { + this.driver = driver; + } + + public void insertSearchText(int i, String Inn, + int i1, String email, + int i2, String phone, + int i3, String name){ + + elementInput.get(i).sendKeys(Inn); + + elementInput.get(i2).sendKeys(phone); + + elementInput.get(i1).sendKeys(email); + + elementInput.get(i3).sendKeys(name); + try { + Thread.sleep(2000); + } catch (InterruptedException e) { + e.printStackTrace(); + } + + + } + public void clickCheckBox(int cBox, + int cBox1, + int cBox2, + int cBox3, + int cBox4) { + elementInput.get(cBox).click(); + try { + Thread.sleep(2000); + } catch (InterruptedException e) { + e.printStackTrace(); + } + elementInput.get(cBox1).click(); + try { + Thread.sleep(2000); + } catch (InterruptedException e) { + e.printStackTrace(); + } + elementInput.get(cBox2).click(); + try { + Thread.sleep(2000); + } catch (InterruptedException e) { + e.printStackTrace(); + } + elementInput.get(cBox3).click(); + try { + Thread.sleep(2000); + } catch (InterruptedException e) { + e.printStackTrace(); + } + elementInput.get(cBox4).click(); + + + } + + + public void clickBtnRequest(){ + + elementBtn.click(); + } + public void submitRequest(){ + elementBtn.sendKeys(Keys.RETURN); + + } + public boolean displayForm(){ + + return elementSpan.getText().contains("Благодрим вас за отправленную анкету"); + + } + +} diff --git a/Nagaytseva/src/test/java/page/PagePriceList.java b/Nagaytseva/src/test/java/page/PagePriceList.java new file mode 100644 index 0000000..99c12c6 --- /dev/null +++ b/Nagaytseva/src/test/java/page/PagePriceList.java @@ -0,0 +1,47 @@ +package page; + +import org.junit.jupiter.api.Assertions; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.support.FindBy; + +import java.io.File; +import java.util.List; + +public class PagePriceList { + WebDriver driver; + + @FindBy(className = "btn") + private WebElement elementBtn; + + private String tmpPath = "C://Users/tab35/Downloads/"; + + public PagePriceList(WebDriver driver) { + this.driver = driver; + } + + public String getFileName(){ + String fileName = elementBtn.getAttribute("href"); + fileName = fileName.substring(fileName.lastIndexOf("/")+1); + return fileName; + } + + public void clickBtn(){ + + elementBtn.click(); + try { + Thread.sleep(5000); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + public boolean isFileDownloaded(String filename){ + + boolean check = false; + File file = new File(tmpPath+filename); + if(file.exists()) { + check = true; + } + return check; + } +} diff --git a/Nagaytseva/src/test/java/page/PageProgrammProduct.java b/Nagaytseva/src/test/java/page/PageProgrammProduct.java new file mode 100644 index 0000000..c43763d --- /dev/null +++ b/Nagaytseva/src/test/java/page/PageProgrammProduct.java @@ -0,0 +1,24 @@ +package page; + +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.support.FindBy; + +import java.util.List; + +public class PageProgrammProduct { + WebDriver driver; + + @FindBy(css = ".dropdown a") + private List elementMenu; + + + public PageProgrammProduct(WebDriver driver) { + this.driver = driver; + } + public void clickLeftMenu(int number){ + + elementMenu.get(number).click(); + + } +} diff --git a/Nagaytseva/src/test/java/page/PageSearch.java b/Nagaytseva/src/test/java/page/PageSearch.java new file mode 100644 index 0000000..fb9c886 --- /dev/null +++ b/Nagaytseva/src/test/java/page/PageSearch.java @@ -0,0 +1,42 @@ +package page; + +import org.openqa.selenium.By; +import org.openqa.selenium.Keys; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.support.FindBy; + +import java.util.List; + +public class PageSearch { + WebDriver driver; + + @FindBy(css = ".dropdown li") + private List leftMenuElement; + + @FindBy(css = ".header-navigation li") + private List topMenuElement; + @FindBy(xpath = "//*[@id=\"queryString\"]") + private WebElement searchField; + + @FindBy(xpath = "//*[@id=\"searchForm\"]/button") + private WebElement searchBtn; + + private static int topMenuElementNumber = 1; + public PageSearch(WebDriver driver) { + this.driver = driver; + } + + + public void clickLeftMenu(int number){ + leftMenuElement.get(number).click(); + } + + public void clickTopMenu(){ + topMenuElement.get(topMenuElementNumber).click(); + } + + public boolean searchPage(){ + return driver.findElement(By.cssSelector("#pagecontentforsolr")).isDisplayed(); + } +} diff --git a/Nagaytseva/src/test/java/page/PageSystemManagment.java b/Nagaytseva/src/test/java/page/PageSystemManagment.java new file mode 100644 index 0000000..fbd92c1 --- /dev/null +++ b/Nagaytseva/src/test/java/page/PageSystemManagment.java @@ -0,0 +1,59 @@ +package page; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.support.FindBy; + +import java.util.List; + +public class PageSystemManagment { + WebDriver driver; + + @FindBy(css = ".widebox a") + private List paginationElement; + + @FindBy(css = ".sidebar-menu li") + private List itemLeftMenu; + + @FindBy(className = "scope") + private List elementPopUpWindow; + @FindBy(css = ".scope .from") + private WebElement windowPopUp; + @FindBy(css = ".widebox a") + private List elementtLinkText; + public PageSystemManagment (WebDriver driver) { + this.driver = driver; + } + + public void clickLeftMenuListPagination() { + + itemLeftMenu.get(4).click(); + + } + public void clickLeftMenuListWindiw() { + + itemLeftMenu.get(3).click(); + + } + public void clickPaginationElement() { + + paginationElement.get(3).click(); + + } + public void clickPopUpWindowElement() { + + elementPopUpWindow.get(0).click(); + + } + public void clickLinkText(){ + elementtLinkText.get(1).click(); + } + public boolean paginationCheck(){ + return driver.findElement(By.cssSelector(".ndate")).isDisplayed(); + } + public boolean popUpWindowCheck(){ + return windowPopUp.isDisplayed(); + } + +} diff --git a/Nagaytseva/src/test/java/page/PageUserCertification.java b/Nagaytseva/src/test/java/page/PageUserCertification.java new file mode 100644 index 0000000..223a639 --- /dev/null +++ b/Nagaytseva/src/test/java/page/PageUserCertification.java @@ -0,0 +1,45 @@ +package page; + +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.support.FindBy; + +import java.util.List; + +public class PageUserCertification { + WebDriver driver; + + @FindBy(className = "country-list-li") + private List itemListCountry; + + @FindBy(name="reg") + private WebElement selectListCity; + @FindBy(xpath="//*[@id=\"pagecontentforsolr\"]/form[2]/select/option[8]") + private WebElement itemListCity; + + @FindBy(css="tr") + private List tr; + public PageUserCertification(WebDriver driver) { + this.driver = driver; + } + + + public void clickFilterCountry(int number){ + itemListCountry.get(number).click(); + } + public void clickFilterCity(){ + selectListCity.click(); + itemListCity.click(); + } + + public boolean checkFilterCity(){ + boolean checkSearch = false; + int count = tr.size(); + for(int i = 0; i