Compare commits
3 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
0ea8df6c32 | ||
|
0ba38238af | ||
|
9d8b87da1b |
@ -3,5 +3,6 @@ package ru.ulstu.tis;
|
|||||||
public class Main {
|
public class Main {
|
||||||
|
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
|
System.out.println("666");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,42 +0,0 @@
|
|||||||
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.AuthPage;
|
|
||||||
import page.MainPage;
|
|
||||||
|
|
||||||
public class AccountTest {
|
|
||||||
private final static String APP_URL_MVideo = "https://www.mvideo.ru/";
|
|
||||||
|
|
||||||
private static Context context;
|
|
||||||
|
|
||||||
@BeforeAll
|
|
||||||
public static void setup() {
|
|
||||||
context = new ChromeContext();
|
|
||||||
context.start();
|
|
||||||
context.getDriver().manage().window().setSize(new Dimension(1366, 768));
|
|
||||||
}
|
|
||||||
|
|
||||||
@AfterAll
|
|
||||||
public static void quit() {
|
|
||||||
context.close();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testAuth() {
|
|
||||||
context.getDriver().get(APP_URL_MVideo);
|
|
||||||
String inputStringMail = "test543321@mail.ru";
|
|
||||||
String inputStringPassword = "1234qwerQWER";
|
|
||||||
|
|
||||||
MainPage pageMain = PageFactory.initElements(context.getDriver(), MainPage.class);
|
|
||||||
AuthPage pageAuth = PageFactory.initElements(context.getDriver(), AuthPage.class);
|
|
||||||
pageMain.clickAuth();
|
|
||||||
pageAuth.setInputStrings(inputStringMail, inputStringPassword);
|
|
||||||
pageAuth.clickSubmitButton();
|
|
||||||
Assertions.assertTrue(pageMain.isAccountPresent());
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,57 +0,0 @@
|
|||||||
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.*;
|
|
||||||
|
|
||||||
public class FeedbackTest {
|
|
||||||
private final static String APP_URL_MVideo = "https://www.mvideo.ru/";
|
|
||||||
|
|
||||||
private static Context context;
|
|
||||||
|
|
||||||
@BeforeAll
|
|
||||||
public static void setup() {
|
|
||||||
context = new ChromeContext();
|
|
||||||
context.start();
|
|
||||||
context.getDriver().manage().window().setSize(new Dimension(1366, 768));
|
|
||||||
}
|
|
||||||
|
|
||||||
@AfterAll
|
|
||||||
public static void quit() {
|
|
||||||
context.close();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testSubscribe() {
|
|
||||||
context.getDriver().get(APP_URL_MVideo);
|
|
||||||
String inputStringMail = "test543321@mail.ru";
|
|
||||||
|
|
||||||
MainPage pageMain = PageFactory.initElements(context.getDriver(), MainPage.class);
|
|
||||||
pageMain.setEmail(inputStringMail);
|
|
||||||
pageMain.clickSubmitSub();
|
|
||||||
Assertions.assertTrue(pageMain.isSubSuccess());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testLeaveReview() {
|
|
||||||
context.getDriver().get(APP_URL_MVideo);
|
|
||||||
MainPage pageMain = PageFactory.initElements(context.getDriver(), MainPage.class);
|
|
||||||
MainMenuPage pageMainMenu = PageFactory.initElements(context.getDriver(), MainMenuPage.class);
|
|
||||||
SideMenuPage pageSideMenu = PageFactory.initElements(context.getDriver(), SideMenuPage.class);
|
|
||||||
ProductPage pageProduct = PageFactory.initElements(context.getDriver(), ProductPage.class);
|
|
||||||
String eMail = "test543321@mail.ru";
|
|
||||||
String text = "тест";
|
|
||||||
|
|
||||||
pageMain.clickMainMenu();
|
|
||||||
pageMainMenu.clickTV();
|
|
||||||
pageSideMenu.clickProduct();
|
|
||||||
pageProduct.clickProductMenu();
|
|
||||||
pageProduct.clickLeaveReviewBtn();
|
|
||||||
pageProduct.setReviewData(eMail, text);
|
|
||||||
Assertions.assertTrue(pageProduct.isProductMenuPresent());
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,206 +0,0 @@
|
|||||||
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.MainMenuPage;
|
|
||||||
import page.MainPage;
|
|
||||||
import page.ProductPage;
|
|
||||||
import page.SideMenuPage;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
public class FiltersTest {
|
|
||||||
private final static String APP_URL_MVideo = "https://www.mvideo.ru/";
|
|
||||||
|
|
||||||
private static Context context;
|
|
||||||
List<Integer> point = new ArrayList<Integer>();
|
|
||||||
|
|
||||||
@BeforeAll
|
|
||||||
public static void setup() {
|
|
||||||
context = new ChromeContext();
|
|
||||||
context.start();
|
|
||||||
context.getDriver().manage().window().setSize(new Dimension(1366, 768));
|
|
||||||
}
|
|
||||||
|
|
||||||
@AfterAll
|
|
||||||
public static void quit() {
|
|
||||||
context.close();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testSearch() {
|
|
||||||
context.getDriver().get(APP_URL_MVideo);
|
|
||||||
String searchString = "Телевизор Samsung";
|
|
||||||
|
|
||||||
MainPage pageMain = PageFactory.initElements(context.getDriver(), MainPage.class);
|
|
||||||
ProductPage pageProduct = PageFactory.initElements(context.getDriver(), ProductPage.class);
|
|
||||||
pageMain.setSearchString(searchString);
|
|
||||||
pageMain.clickSubmitButton();
|
|
||||||
Assertions.assertTrue(pageProduct.isProductCorrect(searchString));
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testProductOneCategoryOnePoint() {
|
|
||||||
context.getDriver().get(APP_URL_MVideo);
|
|
||||||
int point = 1;
|
|
||||||
|
|
||||||
MainPage pageMain = PageFactory.initElements(context.getDriver(), MainPage.class);
|
|
||||||
MainMenuPage pageMainMenu = PageFactory.initElements(context.getDriver(), MainMenuPage.class);
|
|
||||||
SideMenuPage pageFilter = PageFactory.initElements(context.getDriver(), SideMenuPage.class);
|
|
||||||
pageMain.clickMainMenu();
|
|
||||||
pageMainMenu.clickTV();
|
|
||||||
pageFilter.clickCategoryPoint(point);
|
|
||||||
Assertions.assertTrue(pageFilter.isProductContainsPoint());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testProductOneCategoryTwoPoints() {
|
|
||||||
context.getDriver().get(APP_URL_MVideo);
|
|
||||||
int firstCategoryPoint = 1;
|
|
||||||
int secondCategoryPoint = 2;
|
|
||||||
|
|
||||||
MainPage pageMain = PageFactory.initElements(context.getDriver(), MainPage.class);
|
|
||||||
MainMenuPage pageMainMenu = PageFactory.initElements(context.getDriver(), MainMenuPage.class);
|
|
||||||
SideMenuPage pageFilter = PageFactory.initElements(context.getDriver(), SideMenuPage.class);
|
|
||||||
pageMain.clickMainMenu();
|
|
||||||
pageMainMenu.clickTV();
|
|
||||||
point.clear();
|
|
||||||
point.add(firstCategoryPoint);
|
|
||||||
point.add(secondCategoryPoint);
|
|
||||||
pageFilter.clickCategoryTwoPoints(point);
|
|
||||||
Assertions.assertTrue(pageFilter.isProductContainsPoint());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testProductTwoCategoryOnePoint() {
|
|
||||||
context.getDriver().get(APP_URL_MVideo);
|
|
||||||
int categoryPoint = 1;
|
|
||||||
int brandPoint = 2;
|
|
||||||
|
|
||||||
MainPage pageMain = PageFactory.initElements(context.getDriver(), MainPage.class);
|
|
||||||
MainMenuPage pageMainMenu = PageFactory.initElements(context.getDriver(), MainMenuPage.class);
|
|
||||||
SideMenuPage pageFilter = PageFactory.initElements(context.getDriver(), SideMenuPage.class);
|
|
||||||
pageMain.clickMainMenu();
|
|
||||||
pageMainMenu.clickTV();
|
|
||||||
pageFilter.clickCategoryPoint(categoryPoint);
|
|
||||||
pageFilter.clickBrandPoint(brandPoint);
|
|
||||||
Assertions.assertTrue(pageFilter.isProductContainsPoint());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testProductTwoCategoryTwoPoints() {
|
|
||||||
context.getDriver().get(APP_URL_MVideo);
|
|
||||||
int firstCategoryPoint = 1;
|
|
||||||
int secondCategoryPoint = 2;
|
|
||||||
int firstBrandPoint = 2;
|
|
||||||
int secondBrandPoint = 4;
|
|
||||||
|
|
||||||
MainPage pageMain = PageFactory.initElements(context.getDriver(), MainPage.class);
|
|
||||||
MainMenuPage pageMainMenu = PageFactory.initElements(context.getDriver(), MainMenuPage.class);
|
|
||||||
SideMenuPage pageFilter = PageFactory.initElements(context.getDriver(), SideMenuPage.class);
|
|
||||||
pageMain.clickMainMenu();
|
|
||||||
pageMainMenu.clickTV();
|
|
||||||
point.clear();
|
|
||||||
point.add(firstCategoryPoint);
|
|
||||||
point.add(secondCategoryPoint);
|
|
||||||
pageFilter.clickCategoryTwoPoints(point);
|
|
||||||
point.clear();
|
|
||||||
point.add(firstBrandPoint);
|
|
||||||
point.add(secondBrandPoint);
|
|
||||||
pageFilter.clickBrandTwoPoints(point);
|
|
||||||
Assertions.assertTrue(pageFilter.isProductContainsPoint());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testProductCombine() {
|
|
||||||
context.getDriver().get(APP_URL_MVideo);
|
|
||||||
int categoryPoint = 1;
|
|
||||||
int firstBrandPoint = 1;
|
|
||||||
int secondBrandPoint = 3;
|
|
||||||
|
|
||||||
MainPage pageMain = PageFactory.initElements(context.getDriver(), MainPage.class);
|
|
||||||
MainMenuPage pageMainMenu = PageFactory.initElements(context.getDriver(), MainMenuPage.class);
|
|
||||||
SideMenuPage pageFilter = PageFactory.initElements(context.getDriver(), SideMenuPage.class);
|
|
||||||
pageMain.clickMainMenu();
|
|
||||||
pageMainMenu.clickTV();
|
|
||||||
pageFilter.clickCategoryPoint(categoryPoint);
|
|
||||||
point.clear();
|
|
||||||
point.add(firstBrandPoint);
|
|
||||||
point.add(secondBrandPoint);
|
|
||||||
pageFilter.clickBrandTwoPoints(point);
|
|
||||||
Assertions.assertTrue(pageFilter.isProductContainsPoint());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testSort() {
|
|
||||||
context.getDriver().get(APP_URL_MVideo);
|
|
||||||
|
|
||||||
MainPage pageMain = PageFactory.initElements(context.getDriver(), MainPage.class);
|
|
||||||
MainMenuPage pageMainMenu = PageFactory.initElements(context.getDriver(), MainMenuPage.class);
|
|
||||||
SideMenuPage pageFilter = PageFactory.initElements(context.getDriver(), SideMenuPage.class);
|
|
||||||
pageMain.clickMainMenu();
|
|
||||||
pageMainMenu.clickTV();
|
|
||||||
pageFilter.selectAttribute();
|
|
||||||
Assertions.assertTrue(pageFilter.isProductContainsPoint());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testPrice() {
|
|
||||||
context.getDriver().get(APP_URL_MVideo);
|
|
||||||
String minPriceText = "10000";
|
|
||||||
String maxPriceText = "50000";
|
|
||||||
|
|
||||||
MainPage pageMain = PageFactory.initElements(context.getDriver(), MainPage.class);
|
|
||||||
MainMenuPage pageMainMenu = PageFactory.initElements(context.getDriver(), MainMenuPage.class);
|
|
||||||
SideMenuPage pageFilter = PageFactory.initElements(context.getDriver(), SideMenuPage.class);
|
|
||||||
pageMain.clickMainMenu();
|
|
||||||
pageMainMenu.clickTV();
|
|
||||||
pageFilter.setPrice(minPriceText, maxPriceText);
|
|
||||||
Assertions.assertTrue(pageFilter.isProductContainsPoint());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testFavorite() {
|
|
||||||
context.getDriver().get(APP_URL_MVideo);
|
|
||||||
MainPage pageMain = PageFactory.initElements(context.getDriver(), MainPage.class);
|
|
||||||
MainMenuPage pageMainMenu = PageFactory.initElements(context.getDriver(), MainMenuPage.class);
|
|
||||||
SideMenuPage pageSideMenu = PageFactory.initElements(context.getDriver(), SideMenuPage.class);
|
|
||||||
ProductPage pageProduct = PageFactory.initElements(context.getDriver(), ProductPage.class);
|
|
||||||
|
|
||||||
pageMain.clickMainMenu();
|
|
||||||
pageMainMenu.clickTV();
|
|
||||||
pageSideMenu.clickProduct();
|
|
||||||
pageProduct.clickFavorite();
|
|
||||||
Assertions.assertTrue(pageProduct.isProductMenuPresent());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testClearCriteria() {
|
|
||||||
context.getDriver().get(APP_URL_MVideo);
|
|
||||||
int firstCategoryPoint = 1;
|
|
||||||
int secondCategoryPoint = 2;
|
|
||||||
int firstBrandPoint = 2;
|
|
||||||
int secondBrandPoint = 4;
|
|
||||||
|
|
||||||
MainPage pageMain = PageFactory.initElements(context.getDriver(), MainPage.class);
|
|
||||||
MainMenuPage pageMainMenu = PageFactory.initElements(context.getDriver(), MainMenuPage.class);
|
|
||||||
SideMenuPage pageFilter = PageFactory.initElements(context.getDriver(), SideMenuPage.class);
|
|
||||||
pageMain.clickMainMenu();
|
|
||||||
pageMainMenu.clickTV();
|
|
||||||
point.clear();
|
|
||||||
point.add(firstCategoryPoint);
|
|
||||||
point.add(secondCategoryPoint);
|
|
||||||
pageFilter.clickCategoryTwoPoints(point);
|
|
||||||
point.clear();
|
|
||||||
point.add(firstBrandPoint);
|
|
||||||
point.add(secondBrandPoint);
|
|
||||||
pageFilter.clickBrandTwoPoints(point);
|
|
||||||
pageFilter.clickClearBtn();
|
|
||||||
Assertions.assertTrue(pageFilter.isProductContainsPoint());
|
|
||||||
}
|
|
||||||
}
|
|
40
src/test/java/GithubUserSearch.java
Normal file
40
src/test/java/GithubUserSearch.java
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
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.SearchPage;
|
||||||
|
|
||||||
|
|
||||||
|
public class GithubUserSearch {
|
||||||
|
private final static String APP_URL = "https://github.com/";
|
||||||
|
|
||||||
|
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 testResultPageHeader() {
|
||||||
|
context.getDriver().get(APP_URL);
|
||||||
|
String searchString = "romanov73";
|
||||||
|
|
||||||
|
SearchPage page = PageFactory.initElements(context.getDriver(), SearchPage.class);
|
||||||
|
page.setSearchString(searchString);
|
||||||
|
page.clickSubmitButton();
|
||||||
|
page.clickUsersLink();
|
||||||
|
Assertions.assertTrue(page.isUserPresent());
|
||||||
|
}
|
||||||
|
}
|
@ -1,121 +0,0 @@
|
|||||||
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.*;
|
|
||||||
|
|
||||||
public class NavigationTest {
|
|
||||||
private final static String APP_URL_MVideo = "https://www.mvideo.ru/";
|
|
||||||
|
|
||||||
private static Context context;
|
|
||||||
|
|
||||||
@BeforeAll
|
|
||||||
public static void setup() {
|
|
||||||
context = new ChromeContext();
|
|
||||||
context.start();
|
|
||||||
context.getDriver().manage().window().setSize(new Dimension(1366, 768));
|
|
||||||
}
|
|
||||||
|
|
||||||
@AfterAll
|
|
||||||
public static void quit() {
|
|
||||||
context.close();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testLogo() {
|
|
||||||
context.getDriver().get(APP_URL_MVideo);
|
|
||||||
MainPage page = PageFactory.initElements(context.getDriver(), MainPage.class);
|
|
||||||
|
|
||||||
page.clickLogo();
|
|
||||||
Assertions.assertTrue(page.isLogoPresent());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testNavigationMainMenu() {
|
|
||||||
context.getDriver().get(APP_URL_MVideo);
|
|
||||||
MainPage pageMain = PageFactory.initElements(context.getDriver(), MainPage.class);
|
|
||||||
MainMenuPage pageMainMenu = PageFactory.initElements(context.getDriver(), MainMenuPage.class);
|
|
||||||
|
|
||||||
pageMain.clickMainMenu();
|
|
||||||
Assertions.assertTrue(pageMainMenu.isMainMenuPresent());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testNavigationSubMenu() {
|
|
||||||
context.getDriver().get(APP_URL_MVideo);
|
|
||||||
MainPage pageMain = PageFactory.initElements(context.getDriver(), MainPage.class);
|
|
||||||
SubMenuPage pageSubMenu = PageFactory.initElements(context.getDriver(), SubMenuPage.class);
|
|
||||||
|
|
||||||
pageMain.clickSubMenu();
|
|
||||||
Assertions.assertTrue(pageSubMenu.isSubMenuPresent());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testNavigationFooterMenu() {
|
|
||||||
context.getDriver().get(APP_URL_MVideo);
|
|
||||||
MainPage pageMain = PageFactory.initElements(context.getDriver(), MainPage.class);
|
|
||||||
FooterMenuPage pageFooter = PageFactory.initElements(context.getDriver(), FooterMenuPage.class);
|
|
||||||
|
|
||||||
pageMain.clickFooterMenu();
|
|
||||||
Assertions.assertTrue(pageFooter.isFooterMenuPresent());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testNavigationReadMore() {
|
|
||||||
context.getDriver().get(APP_URL_MVideo);
|
|
||||||
MainPage pageMain = PageFactory.initElements(context.getDriver(), MainPage.class);
|
|
||||||
ReadMorePage pageReadMore = PageFactory.initElements(context.getDriver(), ReadMorePage.class);
|
|
||||||
|
|
||||||
pageMain.clickReadMore();
|
|
||||||
Assertions.assertTrue(pageReadMore.isReadMorePresent());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testNavigationSocialLink() {
|
|
||||||
context.getDriver().get(APP_URL_MVideo);
|
|
||||||
MainPage pageMain = PageFactory.initElements(context.getDriver(), MainPage.class);
|
|
||||||
|
|
||||||
pageMain.clickSocialLink();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testReviews() {
|
|
||||||
context.getDriver().get(APP_URL_MVideo);
|
|
||||||
MainPage pageMain = PageFactory.initElements(context.getDriver(), MainPage.class);
|
|
||||||
ReviewsPage pageReviews = PageFactory.initElements(context.getDriver(), ReviewsPage.class);
|
|
||||||
|
|
||||||
pageMain.clickReviews();
|
|
||||||
Assertions.assertTrue(pageReviews.areReviewsPresent());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testSideMenu() {
|
|
||||||
context.getDriver().get(APP_URL_MVideo);
|
|
||||||
MainPage pageMain = PageFactory.initElements(context.getDriver(), MainPage.class);
|
|
||||||
MainMenuPage pageMainMenu = PageFactory.initElements(context.getDriver(), MainMenuPage.class);
|
|
||||||
SideMenuPage pageSideBar = PageFactory.initElements(context.getDriver(), SideMenuPage.class);
|
|
||||||
|
|
||||||
pageMain.clickMainMenu();
|
|
||||||
pageMainMenu.clickTV();
|
|
||||||
Assertions.assertTrue(pageSideBar.isSideBarPresent());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testProductMenu() {
|
|
||||||
context.getDriver().get(APP_URL_MVideo);
|
|
||||||
MainPage pageMain = PageFactory.initElements(context.getDriver(), MainPage.class);
|
|
||||||
MainMenuPage pageMainMenu = PageFactory.initElements(context.getDriver(), MainMenuPage.class);
|
|
||||||
SideMenuPage pageSideMenu = PageFactory.initElements(context.getDriver(), SideMenuPage.class);
|
|
||||||
ProductPage pageProduct = PageFactory.initElements(context.getDriver(), ProductPage.class);
|
|
||||||
|
|
||||||
pageMain.clickMainMenu();
|
|
||||||
pageMainMenu.clickTV();
|
|
||||||
pageSideMenu.clickProduct();
|
|
||||||
pageProduct.clickProductMenu();
|
|
||||||
Assertions.assertTrue(pageProduct.isProductMenuPresent());
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,67 +0,0 @@
|
|||||||
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.*;
|
|
||||||
|
|
||||||
public class ProductsTest {
|
|
||||||
private final static String APP_URL_MVideo = "https://www.mvideo.ru/";
|
|
||||||
|
|
||||||
private static Context context;
|
|
||||||
|
|
||||||
@BeforeAll
|
|
||||||
public static void setup() {
|
|
||||||
context = new ChromeContext();
|
|
||||||
context.start();
|
|
||||||
context.getDriver().manage().window().setSize(new Dimension(1366, 768));
|
|
||||||
}
|
|
||||||
|
|
||||||
@AfterAll
|
|
||||||
public static void quit() {
|
|
||||||
context.close();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testBasketIcon() {
|
|
||||||
context.getDriver().get(APP_URL_MVideo);
|
|
||||||
MainPage pageMain = PageFactory.initElements(context.getDriver(), MainPage.class);
|
|
||||||
BasketPage pageBasket = PageFactory.initElements(context.getDriver(), BasketPage.class);
|
|
||||||
|
|
||||||
pageMain.clickBasketIcon();
|
|
||||||
Assertions.assertTrue(pageBasket.isBasketPagePresent());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testDeleteFromBaster() {
|
|
||||||
context.getDriver().get(APP_URL_MVideo);
|
|
||||||
MainPage pageMain = PageFactory.initElements(context.getDriver(), MainPage.class);
|
|
||||||
BasketPage pageBasket = PageFactory.initElements(context.getDriver(), BasketPage.class);
|
|
||||||
|
|
||||||
pageMain.clickBasketIcon();
|
|
||||||
pageBasket.clickDeleteSpan();
|
|
||||||
Assertions.assertTrue(pageBasket.isBasketPagePresent());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testOrder() {
|
|
||||||
context.getDriver().get(APP_URL_MVideo);
|
|
||||||
MainPage pageMain = PageFactory.initElements(context.getDriver(), MainPage.class);
|
|
||||||
BasketPage pageBasket = PageFactory.initElements(context.getDriver(), BasketPage.class);
|
|
||||||
AuthPage pageAuth = PageFactory.initElements(context.getDriver(), AuthPage.class);
|
|
||||||
OrderPage pageOrder = PageFactory.initElements(context.getDriver(), OrderPage.class);
|
|
||||||
String inputStringMail = "test543321@mail.ru";
|
|
||||||
String inputStringPhone = "9603785796";
|
|
||||||
String inputStringName = "Антон";
|
|
||||||
|
|
||||||
pageMain.clickBasketIcon();
|
|
||||||
pageBasket.clickOrder();
|
|
||||||
pageAuth.clickSubmitBtnAuth();
|
|
||||||
pageOrder.setInputStringsAuth(inputStringMail, inputStringPhone, inputStringName);
|
|
||||||
pageOrder.clickMakeOrderBtn();
|
|
||||||
Assertions.assertTrue(pageOrder.isOrderPresent());
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,7 +1,6 @@
|
|||||||
package context;
|
package context;
|
||||||
|
|
||||||
import org.openqa.selenium.chrome.ChromeDriver;
|
import org.openqa.selenium.chrome.ChromeDriver;
|
||||||
import org.openqa.selenium.chrome.ChromeOptions;
|
|
||||||
|
|
||||||
public class ChromeContext extends Context {
|
public class ChromeContext extends Context {
|
||||||
private final static String WINDOWS_DRIVER = "chromedriver.exe";
|
private final static String WINDOWS_DRIVER = "chromedriver.exe";
|
||||||
@ -10,8 +9,6 @@ public class ChromeContext extends Context {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void createDriver() {
|
protected void createDriver() {
|
||||||
// ChromeOptions options = new ChromeOptions();
|
|
||||||
// options.addArguments("--start-maximazed");
|
|
||||||
driver = new ChromeDriver();
|
driver = new ChromeDriver();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,40 +0,0 @@
|
|||||||
package page;
|
|
||||||
|
|
||||||
import org.openqa.selenium.Keys;
|
|
||||||
import org.openqa.selenium.WebDriver;
|
|
||||||
import org.openqa.selenium.WebElement;
|
|
||||||
import org.openqa.selenium.support.FindBy;
|
|
||||||
|
|
||||||
public class AuthPage {
|
|
||||||
WebDriver driver;
|
|
||||||
|
|
||||||
@FindBy(id = "frm-email")
|
|
||||||
private WebElement fieldEmail;
|
|
||||||
|
|
||||||
@FindBy(id = "frm-password")
|
|
||||||
private WebElement fieldPass;
|
|
||||||
|
|
||||||
@FindBy(id = "submit-button")
|
|
||||||
private WebElement submitBtn;
|
|
||||||
|
|
||||||
@FindBy(xpath = "//*[@id=\"purchaseGuestForm\"]/input[7]")
|
|
||||||
private WebElement submitBtnAuth;
|
|
||||||
|
|
||||||
public AuthPage(WebDriver driver) {
|
|
||||||
this.driver = driver;
|
|
||||||
}
|
|
||||||
|
|
||||||
public AuthPage setInputStrings(String textMail, String textPass) {
|
|
||||||
fieldEmail.sendKeys(textMail);
|
|
||||||
fieldPass.sendKeys(textPass);
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void clickSubmitButton() {
|
|
||||||
submitBtn.sendKeys(Keys.RETURN);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void clickSubmitBtnAuth() {
|
|
||||||
submitBtnAuth.sendKeys(Keys.RETURN);
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,37 +0,0 @@
|
|||||||
package page;
|
|
||||||
|
|
||||||
import org.openqa.selenium.Keys;
|
|
||||||
import org.openqa.selenium.WebDriver;
|
|
||||||
import org.openqa.selenium.WebElement;
|
|
||||||
import org.openqa.selenium.support.FindBy;
|
|
||||||
|
|
||||||
public class BasketPage {
|
|
||||||
WebDriver driver;
|
|
||||||
|
|
||||||
public BasketPage(WebDriver driver) {
|
|
||||||
this.driver = driver;
|
|
||||||
}
|
|
||||||
|
|
||||||
@FindBy(css = ".c-logo")
|
|
||||||
private WebElement logoIcon;
|
|
||||||
|
|
||||||
@FindBy(css = ".c-cart-item__delete .c-link")
|
|
||||||
private WebElement deleteSpan;
|
|
||||||
|
|
||||||
@FindBy(css = ".c-btn_full-size")
|
|
||||||
private WebElement makeOrderBtn;
|
|
||||||
|
|
||||||
public boolean isBasketPagePresent() { return driver.getTitle().contains("Корзина"); }
|
|
||||||
|
|
||||||
public void clickLogo() {
|
|
||||||
logoIcon.sendKeys(Keys.RETURN);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void clickDeleteSpan() {
|
|
||||||
deleteSpan.sendKeys(Keys.RETURN);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void clickOrder() {
|
|
||||||
makeOrderBtn.sendKeys(Keys.RETURN);
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,13 +0,0 @@
|
|||||||
package page;
|
|
||||||
|
|
||||||
import org.openqa.selenium.WebDriver;
|
|
||||||
|
|
||||||
public class FacebookPage {
|
|
||||||
WebDriver driver;
|
|
||||||
|
|
||||||
public FacebookPage(WebDriver driver) {
|
|
||||||
this.driver = driver;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isSocialLinkPresent() { return driver.getTitle().contains("Facebook"); }
|
|
||||||
}
|
|
@ -1,16 +0,0 @@
|
|||||||
package page;
|
|
||||||
|
|
||||||
import org.openqa.selenium.By;
|
|
||||||
import org.openqa.selenium.WebDriver;
|
|
||||||
|
|
||||||
public class FooterMenuPage {
|
|
||||||
WebDriver driver;
|
|
||||||
|
|
||||||
public FooterMenuPage(WebDriver driver) {
|
|
||||||
this.driver = driver;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isFooterMenuPresent() {
|
|
||||||
return driver.findElement(By.cssSelector(".lazy-load-image-holder")).isDisplayed();
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,23 +0,0 @@
|
|||||||
package page;
|
|
||||||
|
|
||||||
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 MainMenuPage {
|
|
||||||
WebDriver driver;
|
|
||||||
|
|
||||||
@FindBy(css =".sidebar-category a")
|
|
||||||
private List<WebElement> TVs;
|
|
||||||
|
|
||||||
public MainMenuPage(WebDriver driver) {
|
|
||||||
this.driver = driver;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isMainMenuPresent() { return driver.getTitle().contains("Телевизоры, Аудио-видео, Hi-Fi"); }
|
|
||||||
|
|
||||||
public void clickTV() { TVs.get(0).sendKeys(Keys.RETURN); }
|
|
||||||
}
|
|
@ -1,127 +0,0 @@
|
|||||||
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.interactions.Actions;
|
|
||||||
import org.openqa.selenium.support.FindBy;
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
public class MainPage {
|
|
||||||
WebDriver driver;
|
|
||||||
|
|
||||||
@FindBy(css = ".header-nav-item-link")
|
|
||||||
private List<WebElement> mainMenu;
|
|
||||||
|
|
||||||
@FindBy(xpath = "/html/body/div[1]/div/div[2]/div/div[1]/div[7]/nav/ul/li[8]/div/div/ul[2]/li[1]/ul/li[1]/a")
|
|
||||||
private WebElement subMenu;
|
|
||||||
|
|
||||||
@FindBy(css = ".footer-nav-link")
|
|
||||||
private List<WebElement> footerMenu;
|
|
||||||
|
|
||||||
@FindBy(css = ".header-logo")
|
|
||||||
private WebElement mVideoLogo;
|
|
||||||
|
|
||||||
@FindBy(css = ".shop-service-list .view-all-base")
|
|
||||||
private List<WebElement> readMore;
|
|
||||||
|
|
||||||
@FindBy(css = ".socials-link")
|
|
||||||
private List<WebElement> socialLink;
|
|
||||||
|
|
||||||
@FindBy(css = ".promo-banner-slider-info .btn")
|
|
||||||
private WebElement reviews;
|
|
||||||
|
|
||||||
@FindBy(css = ".header-search-input")
|
|
||||||
private WebElement inputField;
|
|
||||||
|
|
||||||
@FindBy(css = ".header-login-option-link")
|
|
||||||
private List<WebElement> authReg;
|
|
||||||
|
|
||||||
@FindBy(xpath = ".//*[@id=\"js-form-submit-id\"]")
|
|
||||||
private WebElement basketIcon;
|
|
||||||
|
|
||||||
@FindBy(id = "frm-subscr-email-address")
|
|
||||||
private WebElement inputEMail;
|
|
||||||
|
|
||||||
@FindBy(id = "submitSubscribe")
|
|
||||||
private WebElement sbmtSubBtn;
|
|
||||||
|
|
||||||
public MainPage(WebDriver driver) {
|
|
||||||
this.driver = driver;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isLogoPresent() { return driver.findElement(By.cssSelector(".header-logo")).isDisplayed(); }
|
|
||||||
|
|
||||||
public boolean isAccountPresent() {
|
|
||||||
return driver.findElement(By.cssSelector(".my-account-personal-photo-placeholder")).isDisplayed();
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isSubSuccess() { return driver.findElement(By.cssSelector(".text-success")).isDisplayed(); }
|
|
||||||
|
|
||||||
public void clickMainMenu() {
|
|
||||||
mainMenu.get(1).sendKeys(Keys.RETURN);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void clickSubMenu() {
|
|
||||||
Actions builder = new Actions(driver);
|
|
||||||
builder.moveToElement(mainMenu.get(7)).perform();
|
|
||||||
|
|
||||||
subMenu.sendKeys(Keys.RETURN);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void clickFooterMenu() {
|
|
||||||
footerMenu.get(1).sendKeys(Keys.RETURN);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void clickLogo() {
|
|
||||||
mVideoLogo.sendKeys(Keys.RETURN);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void clickReadMore() {
|
|
||||||
readMore.get(1).sendKeys(Keys.RETURN);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void clickSocialLink() {
|
|
||||||
String base = driver.getWindowHandle();
|
|
||||||
|
|
||||||
socialLink.get(0).sendKeys(Keys.RETURN);
|
|
||||||
|
|
||||||
driver.switchTo().window(base);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void clickReviews() {
|
|
||||||
reviews.sendKeys(Keys.RETURN);
|
|
||||||
}
|
|
||||||
|
|
||||||
public MainPage setSearchString(String text) {
|
|
||||||
inputField.sendKeys(text);
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void clickSubmitButton() {
|
|
||||||
inputField.sendKeys(Keys.RETURN);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void clickAuth() {
|
|
||||||
authReg.get(0).sendKeys(Keys.RETURN);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void clickReg() {
|
|
||||||
authReg.get(1).sendKeys(Keys.RETURN);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void clickBasketIcon() {
|
|
||||||
basketIcon.sendKeys(Keys.RETURN);
|
|
||||||
}
|
|
||||||
|
|
||||||
public MainPage setEmail(String eMailText) {
|
|
||||||
inputEMail.sendKeys(eMailText);
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void clickSubmitSub() {
|
|
||||||
sbmtSubBtn.sendKeys(Keys.RETURN);
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,46 +0,0 @@
|
|||||||
package page;
|
|
||||||
|
|
||||||
import org.openqa.selenium.Keys;
|
|
||||||
import org.openqa.selenium.WebDriver;
|
|
||||||
import org.openqa.selenium.WebElement;
|
|
||||||
import org.openqa.selenium.support.FindBy;
|
|
||||||
|
|
||||||
public class OrderPage {
|
|
||||||
WebDriver driver;
|
|
||||||
|
|
||||||
@FindBy(id = "field_8")
|
|
||||||
private WebElement fieldEmailAuth;
|
|
||||||
|
|
||||||
@FindBy(id = "myPhone")
|
|
||||||
private WebElement fieldPhoneAuth;
|
|
||||||
|
|
||||||
@FindBy(id = "field_6")
|
|
||||||
private WebElement fieldNameAuth;
|
|
||||||
|
|
||||||
@FindBy(xpath = "/html/body/div[1]/div[2]/div[3]/div[2]/div/form/input[9]")
|
|
||||||
private WebElement makeOrderBtn;
|
|
||||||
|
|
||||||
@FindBy(css = ".c-logo")
|
|
||||||
private WebElement logo;
|
|
||||||
|
|
||||||
public OrderPage(WebDriver driver) {
|
|
||||||
this.driver = driver;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isOrderPresent() { return driver.getTitle().contains("Информация о заказе"); }
|
|
||||||
|
|
||||||
public OrderPage setInputStringsAuth(String textMail, String textPhone, String textName) {
|
|
||||||
fieldEmailAuth.sendKeys(textMail);
|
|
||||||
fieldPhoneAuth.sendKeys(textPhone);
|
|
||||||
fieldNameAuth.sendKeys(textName);
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void clickMakeOrderBtn() {
|
|
||||||
makeOrderBtn.sendKeys(Keys.RETURN);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void clickLogo() {
|
|
||||||
logo.sendKeys(Keys.RETURN);
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,61 +0,0 @@
|
|||||||
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 ProductPage {
|
|
||||||
WebDriver driver;
|
|
||||||
|
|
||||||
@FindBy(css = ".c-tabs__menu .c-tabs__menu-link")
|
|
||||||
private List<WebElement> productMenu;
|
|
||||||
|
|
||||||
@FindBy(css = ".c-checkbox__icon")
|
|
||||||
private WebElement favoriteSpan;
|
|
||||||
|
|
||||||
@FindBy(css = ".product-leave-review-btn")
|
|
||||||
private WebElement leaveReviewBtn;
|
|
||||||
|
|
||||||
@FindBy(id = "userEmail")
|
|
||||||
private WebElement inputUserName;
|
|
||||||
|
|
||||||
@FindBy(id = "userComment")
|
|
||||||
private WebElement inputReviewText;
|
|
||||||
|
|
||||||
@FindBy(css = ".text-cutter-wrapper")
|
|
||||||
private List<WebElement> titles;
|
|
||||||
|
|
||||||
public ProductPage(WebDriver driver) {
|
|
||||||
this.driver = driver;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isProductMenuPresent() { return driver.getTitle().contains("отзывы"); }
|
|
||||||
|
|
||||||
public boolean isProductCorrect(String searchString) {
|
|
||||||
boolean correct = true;
|
|
||||||
for (int i = 0; i < titles.size(); i++) {
|
|
||||||
if (!titles.get(i).getText().contains(searchString)) {
|
|
||||||
correct = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return correct;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void clickProductMenu() {
|
|
||||||
productMenu.get(2).sendKeys(Keys.RETURN);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void clickFavorite() { favoriteSpan.sendKeys(Keys.RETURN); }
|
|
||||||
|
|
||||||
public void clickLeaveReviewBtn() { leaveReviewBtn.sendKeys(Keys.RETURN); }
|
|
||||||
|
|
||||||
public ProductPage setReviewData(String eMailText, String reviewText) {
|
|
||||||
inputUserName.sendKeys(eMailText);
|
|
||||||
inputReviewText.sendKeys(reviewText);
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,13 +0,0 @@
|
|||||||
package page;
|
|
||||||
|
|
||||||
import org.openqa.selenium.WebDriver;
|
|
||||||
|
|
||||||
public class ReadMorePage {
|
|
||||||
WebDriver driver;
|
|
||||||
|
|
||||||
public ReadMorePage(WebDriver driver) {
|
|
||||||
this.driver = driver;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isReadMorePresent() { return driver.getTitle().contains("Быстросервис"); }
|
|
||||||
}
|
|
@ -1,46 +0,0 @@
|
|||||||
package page;
|
|
||||||
|
|
||||||
import org.openqa.selenium.Keys;
|
|
||||||
import org.openqa.selenium.WebDriver;
|
|
||||||
import org.openqa.selenium.WebElement;
|
|
||||||
import org.openqa.selenium.support.FindBy;
|
|
||||||
|
|
||||||
public class RegPage {
|
|
||||||
WebDriver driver;
|
|
||||||
|
|
||||||
@FindBy(id = "register-form-name-input")
|
|
||||||
private WebElement inputName;
|
|
||||||
|
|
||||||
@FindBy(id = "register-form-phone")
|
|
||||||
private WebElement inputPhone;
|
|
||||||
|
|
||||||
@FindBy(id = "register-register-form-email-phone")
|
|
||||||
private WebElement inputEmail;
|
|
||||||
|
|
||||||
@FindBy(id = "register-form-password")
|
|
||||||
private WebElement inputPass;
|
|
||||||
|
|
||||||
@FindBy(id = "register-form-confirm-password")
|
|
||||||
private WebElement inputPassConfirm;
|
|
||||||
|
|
||||||
@FindBy(css = ".add-address-submit-btn")
|
|
||||||
private WebElement submitBtn;
|
|
||||||
|
|
||||||
public RegPage(WebDriver driver) {
|
|
||||||
this.driver = driver;
|
|
||||||
}
|
|
||||||
|
|
||||||
public RegPage setInputStrings(String textName, String textPhone, String textEmail, String textPass,
|
|
||||||
String textPassConfirm) {
|
|
||||||
inputName.sendKeys(textName);
|
|
||||||
inputPhone.sendKeys(textPhone);
|
|
||||||
inputEmail.sendKeys(textEmail);
|
|
||||||
inputPass.sendKeys(textPass);
|
|
||||||
inputPassConfirm.sendKeys(textPassConfirm);
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void clickSubmitBtn() {
|
|
||||||
submitBtn.sendKeys(Keys.RETURN);
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,13 +0,0 @@
|
|||||||
package page;
|
|
||||||
|
|
||||||
import org.openqa.selenium.WebDriver;
|
|
||||||
|
|
||||||
public class ReviewsPage {
|
|
||||||
WebDriver driver;
|
|
||||||
|
|
||||||
public ReviewsPage(WebDriver driver) {
|
|
||||||
this.driver = driver;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean areReviewsPresent() { return driver.getTitle().contains("отзывы покупателей"); }
|
|
||||||
}
|
|
38
src/test/java/page/SearchPage.java
Normal file
38
src/test/java/page/SearchPage.java
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
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;
|
||||||
|
|
||||||
|
public class SearchPage {
|
||||||
|
WebDriver driver;
|
||||||
|
|
||||||
|
@FindBy(css = "input.header-search-input")
|
||||||
|
private WebElement inputField;
|
||||||
|
|
||||||
|
@FindBy(xpath = "//a[contains(@href, 'Users')]")
|
||||||
|
private WebElement usersLink;
|
||||||
|
|
||||||
|
public SearchPage(WebDriver driver) {
|
||||||
|
this.driver = driver;
|
||||||
|
}
|
||||||
|
|
||||||
|
public SearchPage setSearchString(String text) {
|
||||||
|
inputField.sendKeys(text);
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void clickSubmitButton() {
|
||||||
|
inputField.sendKeys(Keys.RETURN);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void clickUsersLink() {
|
||||||
|
usersLink.click();
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isUserPresent() {
|
||||||
|
return driver.findElement(By.cssSelector(".user-list-info")).isDisplayed();
|
||||||
|
}
|
||||||
|
}
|
@ -1,96 +0,0 @@
|
|||||||
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 SideMenuPage {
|
|
||||||
WebDriver driver;
|
|
||||||
|
|
||||||
@FindBy(css = ".c-product-tile .sel-product-tile-title")
|
|
||||||
private List<WebElement> product;
|
|
||||||
|
|
||||||
@FindBy(css = ".header-logo")
|
|
||||||
private WebElement mVideoLogo;
|
|
||||||
|
|
||||||
@FindBy(css = ".c-plp-facets__item-link")
|
|
||||||
private List<WebElement> points;
|
|
||||||
|
|
||||||
@FindBy(css = "#category-section .c-plp-facets__item-link")
|
|
||||||
private List<WebElement> categoryPoints;
|
|
||||||
|
|
||||||
@FindBy(css = "#brand-section .c-plp-facets__item-link")
|
|
||||||
private List<WebElement> brandPoints;
|
|
||||||
|
|
||||||
@FindBy(css = ".c-plp-facets__clear-wrapper .c-btn")
|
|
||||||
private WebElement clearBtn;
|
|
||||||
|
|
||||||
@FindBy(css = ".o-plp-container_sub-header .select-button")
|
|
||||||
private WebElement selectBtn;
|
|
||||||
|
|
||||||
@FindBy(css = ".drop-box a")
|
|
||||||
private List<WebElement> attribute;
|
|
||||||
|
|
||||||
@FindBy(css = ".c-text-field .facet-price-min")
|
|
||||||
private WebElement priceLeft;
|
|
||||||
|
|
||||||
@FindBy(css = ".c-text-field .facet-price-max")
|
|
||||||
private WebElement priceRight;
|
|
||||||
|
|
||||||
public SideMenuPage(WebDriver driver) {
|
|
||||||
this.driver = driver;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isSideBarPresent() {
|
|
||||||
return driver.findElement(By.cssSelector(".c-plp-facets__item-link")).isDisplayed();
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isProductContainsPoint() {
|
|
||||||
return driver.findElement(By.cssSelector(".c-product-tile__description")).isDisplayed();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void clickProduct() {
|
|
||||||
product.get(0).sendKeys(Keys.RETURN);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void clickLogo() {
|
|
||||||
mVideoLogo.sendKeys(Keys.RETURN);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void clickCategoryPoint(int point) { categoryPoints.get(point).sendKeys(Keys.RETURN); }
|
|
||||||
|
|
||||||
public void clickBrandPoint(int point) { brandPoints.get(point).sendKeys(Keys.RETURN); }
|
|
||||||
|
|
||||||
public void clickCategoryTwoPoints(List<Integer> point) {
|
|
||||||
for (int i = 0; i < point.size(); i++) {
|
|
||||||
categoryPoints.get(point.get(i)).sendKeys(Keys.RETURN);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void clickBrandTwoPoints(List<Integer> point) {
|
|
||||||
for (int i = 0; i < point.size(); i++) {
|
|
||||||
brandPoints.get(point.get(i)).sendKeys(Keys.RETURN);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void clickClearBtn() { clearBtn.sendKeys(Keys.RETURN); }
|
|
||||||
|
|
||||||
public void selectAttribute() {
|
|
||||||
selectBtn.sendKeys(Keys.RETURN);
|
|
||||||
attribute.get(3).sendKeys(Keys.RETURN);
|
|
||||||
}
|
|
||||||
|
|
||||||
public SideMenuPage setPrice(String minPrice, String maxPrice) {
|
|
||||||
priceLeft.clear();
|
|
||||||
priceLeft.sendKeys(minPrice);
|
|
||||||
priceRight.sendKeys(Keys.RETURN);
|
|
||||||
priceRight.clear();
|
|
||||||
priceRight.sendKeys(maxPrice);
|
|
||||||
priceRight.sendKeys(Keys.RETURN);
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,13 +0,0 @@
|
|||||||
package page;
|
|
||||||
|
|
||||||
import org.openqa.selenium.WebDriver;
|
|
||||||
|
|
||||||
public class SubMenuPage {
|
|
||||||
WebDriver driver;
|
|
||||||
|
|
||||||
public SubMenuPage(WebDriver driver) {
|
|
||||||
this.driver = driver;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isSubMenuPresent() { return driver.getTitle().contains("Фены и фен-щетки"); }
|
|
||||||
}
|
|
Loading…
Reference in New Issue
Block a user