exportUser(){
+ return new ObjectMapper().convertValue(this, Map.class);
+ }
+
+ public boolean doesFieldExist(String field){
+ return new General().doesObjectContainField(this, field);
+ }
+}
diff --git a/src/test/java/io/lazycoder/pages/admin/ChatBox.java b/src/test/java/io/lazycoder/pages/admin/ChatBox.java
new file mode 100644
index 0000000..3861668
--- /dev/null
+++ b/src/test/java/io/lazycoder/pages/admin/ChatBox.java
@@ -0,0 +1,4 @@
+package io.lazycoder.pages.admin;
+
+public class ChatBox {
+}
diff --git a/src/test/java/io/lazycoder/pages/admin/adminBase.java b/src/test/java/io/lazycoder/pages/admin/adminBase.java
new file mode 100644
index 0000000..e854cb3
--- /dev/null
+++ b/src/test/java/io/lazycoder/pages/admin/adminBase.java
@@ -0,0 +1,35 @@
+package io.lazycoder.pages.admin;
+
+import io.lazycoder.pages.admin.complexFormPage.UserInfoSection;
+import io.lazycoder.pages.admin.complexFormPage.complexFormBasePage;
+import io.lazycoder.pages.admin.settings.callSettings.callSettingsBasePage;
+import io.lazycoder.pages.admin.settings.generalSettingsPage;
+import io.lazycoder.pages.admin.settings.settingsBase;
+import io.lazycoder.pages.basePage;
+import io.lazycoder.pages.noauth.logOutPage;
+import org.openqa.selenium.By;
+
+public class adminBase extends basePage {
+
+ By settingsButton = By.id("settings");
+
+ By personalSettings = By.cssSelector("");
+
+ public adminBase() {
+ super("/admin", "");
+ }
+
+ public complexFormBasePage switchToComplexForm(){
+ clickOn(personalSettings);
+ return new complexFormBasePage();
+ }
+
+ public settingsBase switchToSettings() {
+ clickOn(settingsButton);
+ return new settingsBase();
+ }
+ public UserInfoSection completeUserProfile(){
+ clickOn(personalSettings);
+ return new UserInfoSection();
+ }
+}
diff --git a/src/test/java/io/lazycoder/pages/admin/complexFormPage/SpouseInfoSection.java b/src/test/java/io/lazycoder/pages/admin/complexFormPage/SpouseInfoSection.java
new file mode 100644
index 0000000..a6d9229
--- /dev/null
+++ b/src/test/java/io/lazycoder/pages/admin/complexFormPage/SpouseInfoSection.java
@@ -0,0 +1,46 @@
+package io.lazycoder.pages.admin.complexFormPage;
+
+import io.lazycoder.helpers.User;
+import io.lazycoder.pages.basePage;
+import io.lazycoder.pages.noauth.homePage;
+import org.openqa.selenium.By;
+
+import java.util.Date;
+
+
+public class SpouseInfoSection extends basePage {
+
+ By field1 = By.className("");
+ By continueButton = By.cssSelector("");
+
+
+ public homePage fillFields(User user){
+ return this.firstName(user.firstName).lastName(user.lastName).birthDate(user.birthdate).next();
+ }
+
+ public SpouseInfoSection fillField1(String value){
+ type(value, field1);
+ return this;
+ }
+
+ public SpouseInfoSection firstName(String value){
+ type(value, field1);
+ return this;
+ }
+ public SpouseInfoSection lastName(String value){
+ type(value, field1);
+ return this;
+ }
+ public SpouseInfoSection birthDate(Date value){
+ type(value.toString(), field1);
+ return this;
+ }
+
+ public homePage next(){
+ clickOn(continueButton);
+ return new homePage();
+ }
+
+
+
+}
diff --git a/src/test/java/io/lazycoder/pages/admin/complexFormPage/UserInfoSection.java b/src/test/java/io/lazycoder/pages/admin/complexFormPage/UserInfoSection.java
new file mode 100644
index 0000000..84ccfb2
--- /dev/null
+++ b/src/test/java/io/lazycoder/pages/admin/complexFormPage/UserInfoSection.java
@@ -0,0 +1,42 @@
+package io.lazycoder.pages.admin.complexFormPage;
+
+import io.lazycoder.helpers.User;
+import io.lazycoder.pages.basePage;
+import org.openqa.selenium.By;
+
+import java.util.Date;
+
+public class UserInfoSection extends basePage {
+
+ By field1 = By.className("");
+ By continueButton = By.cssSelector("");
+
+ public UserInfoSection fillField1(String value){
+ type(value, field1);
+ return this;
+ }
+ public SpouseInfoSection fillFields(User user){
+ return this.firstName(user.firstName)
+ .lastName(user.lastName)
+ .birthDate(user.birthdate)
+ .next();
+ }
+
+ public UserInfoSection firstName(String value){
+ type(value, field1);
+ return this;
+ }
+ public UserInfoSection lastName(String value){
+ type(value, field1);
+ return this;
+ }
+ public UserInfoSection birthDate(Date value){
+ type(value.toString(), field1);
+ return this;
+ }
+
+ public SpouseInfoSection next(){
+ clickOn(continueButton);
+ return new SpouseInfoSection();
+ }
+}
diff --git a/src/test/java/io/lazycoder/pages/admin/complexFormPage/complexFormBasePage.java b/src/test/java/io/lazycoder/pages/admin/complexFormPage/complexFormBasePage.java
new file mode 100644
index 0000000..3707f05
--- /dev/null
+++ b/src/test/java/io/lazycoder/pages/admin/complexFormPage/complexFormBasePage.java
@@ -0,0 +1,18 @@
+package io.lazycoder.pages.admin.complexFormPage;
+
+import io.lazycoder.helpers.User;
+import io.lazycoder.pages.admin.adminBase;
+
+import java.util.Map;
+
+public class complexFormBasePage extends adminBase {
+
+ UserInfoSection userInfoSection = new UserInfoSection();
+ SpouseInfoSection spouseInfoSection = new SpouseInfoSection();
+
+ public complexFormBasePage fillRequiredFields(User self, User spouse){
+ userInfoSection.fillFields(self);
+ spouseInfoSection.fillFields(spouse);
+ return this;
+ }
+}
diff --git a/src/test/java/io/lazycoder/pages/admin/settings/callSettings/audioCallPage.java b/src/test/java/io/lazycoder/pages/admin/settings/callSettings/audioCallPage.java
new file mode 100644
index 0000000..a0163a9
--- /dev/null
+++ b/src/test/java/io/lazycoder/pages/admin/settings/callSettings/audioCallPage.java
@@ -0,0 +1,9 @@
+package io.lazycoder.pages.admin.settings.callSettings;
+
+public class audioCallPage extends callSettingsBasePage{
+
+
+ public audioCallPage changeSettings(){
+ return this;
+ }
+}
diff --git a/src/test/java/io/lazycoder/pages/admin/settings/callSettings/callSettingsBasePage.java b/src/test/java/io/lazycoder/pages/admin/settings/callSettings/callSettingsBasePage.java
new file mode 100644
index 0000000..a93d36c
--- /dev/null
+++ b/src/test/java/io/lazycoder/pages/admin/settings/callSettings/callSettingsBasePage.java
@@ -0,0 +1,21 @@
+package io.lazycoder.pages.admin.settings.callSettings;
+
+import io.lazycoder.pages.admin.settings.settingsBase;
+import org.openqa.selenium.By;
+
+public class callSettingsBasePage extends settingsBase {
+
+ By audioSettingsLink = By.cssSelector("");
+ By videoSettingsLink = By.cssSelector("");
+
+
+ public audioCallPage switchToAudioSettings(){
+ clickOn(audioSettingsLink);
+ return new audioCallPage();
+ }
+
+ public videoCallPage switchToVideoSettings(){
+ clickOn(videoSettingsLink);
+ return new videoCallPage();
+ }
+}
diff --git a/src/test/java/io/lazycoder/pages/admin/settings/callSettings/videoCallPage.java b/src/test/java/io/lazycoder/pages/admin/settings/callSettings/videoCallPage.java
new file mode 100644
index 0000000..1a2ddd0
--- /dev/null
+++ b/src/test/java/io/lazycoder/pages/admin/settings/callSettings/videoCallPage.java
@@ -0,0 +1,8 @@
+package io.lazycoder.pages.admin.settings.callSettings;
+
+public class videoCallPage extends callSettingsBasePage {
+
+ public videoCallPage changeSettings(){
+ return this;
+ }
+}
diff --git a/src/test/java/io/lazycoder/pages/admin/settings/generalSettingsPage.java b/src/test/java/io/lazycoder/pages/admin/settings/generalSettingsPage.java
new file mode 100644
index 0000000..d8017b8
--- /dev/null
+++ b/src/test/java/io/lazycoder/pages/admin/settings/generalSettingsPage.java
@@ -0,0 +1,26 @@
+package io.lazycoder.pages.admin.settings;
+
+import org.openqa.selenium.By;
+
+public class generalSettingsPage extends settingsBase {
+
+ private By changePasswordButton;
+ private By oldPasswordField;
+ private By newPasswordField;
+ private By secondaryPasswordField;
+ private By saveButton;
+
+ public generalSettingsPage changePassword(String oldPassword, String newPassword, String secondaryPassword){
+ clickOn(changePasswordButton);
+ type(oldPassword, oldPasswordField);
+ type(newPassword, newPasswordField);
+ type(secondaryPassword, secondaryPasswordField);
+ clickOn(saveButton);
+ return this;
+ }
+
+ public generalSettingsPage changePassword(String oldPassword, String newPassword){
+ return changePassword(oldPassword, newPassword, newPassword);
+ }
+
+}
diff --git a/src/test/java/io/lazycoder/pages/admin/settings/settingsBase.java b/src/test/java/io/lazycoder/pages/admin/settings/settingsBase.java
new file mode 100644
index 0000000..cb6f245
--- /dev/null
+++ b/src/test/java/io/lazycoder/pages/admin/settings/settingsBase.java
@@ -0,0 +1,36 @@
+package io.lazycoder.pages.admin.settings;
+
+import io.lazycoder.pages.admin.adminBase;
+import io.lazycoder.pages.admin.settings.callSettings.callSettingsBasePage;
+import org.openqa.selenium.By;
+
+public class settingsBase extends adminBase {
+ /**
+ * init base page
+ *
+ * @param url the partial url to this page, if not matching current url then navigating to it
+ * @param title the title of the page
+ */
+
+ By callSettingsTab = By.cssSelector("");
+ By generalSettingsTab = By.cssSelector("");
+
+ By tab1 = By.cssSelector("");
+ By tab2 = By.cssSelector("");
+ By tab3 = By.cssSelector("");
+ By tab4 = By.cssSelector("");
+
+ public settingsBase() {
+ super();
+ }
+
+ public callSettingsBasePage switchToCallSettingsTab(){
+ clickOn(callSettingsTab);
+ return new callSettingsBasePage();
+ }
+
+ public generalSettingsPage switchToGeneralSettingsTab(){
+ clickOn(generalSettingsTab);
+ return new generalSettingsPage();
+ }
+}
diff --git a/src/test/java/io/lazycoder/pages/basePage.java b/src/test/java/io/lazycoder/pages/basePage.java
index 036ddab..e5371dd 100644
--- a/src/test/java/io/lazycoder/pages/basePage.java
+++ b/src/test/java/io/lazycoder/pages/basePage.java
@@ -1,12 +1,13 @@
package io.lazycoder.pages;
+import io.qameta.allure.Attachment;
+import io.qameta.allure.Step;
import org.openqa.selenium.*;
import org.openqa.selenium.support.PageFactory;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.WebDriverWait;
import org.testng.Assert;
-import ru.yandex.qatools.allure.annotations.Attachment;
-import ru.yandex.qatools.allure.annotations.Step;
+
import ru.yandex.qatools.ashot.AShot;
import ru.yandex.qatools.ashot.Screenshot;
import ru.yandex.qatools.ashot.cropper.indent.IndentCropper;
@@ -17,6 +18,7 @@
import java.io.IOException;
import java.util.HashMap;
import java.util.Properties;
+import java.util.concurrent.TimeUnit;
import static io.lazycoder.tests.baseTest.*;
import static ru.yandex.qatools.ashot.cropper.indent.IndentFilerFactory.blur;
@@ -24,7 +26,7 @@
/**
* Created by Andrew Krug on 1/16/2017.
*/
-public class basePage >{
+public abstract class basePage
>{
protected HashMap store;
protected Properties _properties;
protected WebDriver _driver;
@@ -49,6 +51,12 @@ public basePage(String url, String title){
}
+ public basePage(){
+ this._driver = getDriver();
+ this._properties = getProperties();
+ this.store = getStore();
+ saveToReport("Current URL: " + _driver.getCurrentUrl());
+ }
/**
* specific method that navigates to this page and leaves you in the same class for method chaining
* @return the class that is called from
@@ -101,7 +109,7 @@ public P saveSceenShot(){
* Method that actually takes a screenshot.
* @return the screenshot as a Byte array
*/
- @Attachment("Page Screenshot")
+ @Attachment(value="Page Screenshot", type="image/png")
public byte[] makeScreenshot() {
System.out.println("getting screenshot");
return ((TakesScreenshot) _driver).getScreenshotAs(OutputType.BYTES);
@@ -175,6 +183,11 @@ public P clickOn(By locator){
return (P)this;
}
+// public P clickOn(By locator, int timeout){
+// find(locator, timeout).click();
+// return (P)this;
+// }
+
/**
* wrapper for explicit wait and click using the locator instead
* @param locator locator to use
@@ -183,13 +196,29 @@ public P clickOn(By locator){
*/
@Step("Click on {0}")
public P clickOn(By locator, int timeout){
- new WebDriverWait(_driver, 5).until(ExpectedConditions.elementToBeClickable(_driver.findElement(locator)));
+ new WebDriverWait(_driver, timeout).until(ExpectedConditions.elementToBeClickable(_driver.findElement(locator)));
WebElement element = _driver.findElement(locator);
saveCroppedBlurredSS(element);
element.click();
return (P)this;
}
+ public WebElement find(By locator){
+ return _driver.findElement(locator);
+ }
+
+ public WebElement find(By locator, int timeout){
+ WebDriverWait wait = new WebDriverWait(_driver, timeout);
+ wait.until(ExpectedConditions.elementToBeClickable(locator));
+ return _driver.findElement(locator);
+ }
+
+ public P type(String text, By locator){
+ find(locator).sendKeys(text);
+ return (P)this;
+ }
+
+
/**
* Saves the value to the key in the store, used to quickly retrieve the value for later assertions
* @param key
@@ -242,4 +271,26 @@ public P refreshPage(){
saveSceenShot();
return (P)this;
}
+
+ protected boolean isElementVisibleNow(By locator, int timeout) {
+ _driver.manage().timeouts().
+ implicitlyWait(0, TimeUnit.SECONDS);
+
+ boolean result = false;
+ WebDriverWait wait = new WebDriverWait(_driver, timeout);
+ wait.until(ExpectedConditions.
+ visibilityOfElementLocated(locator));
+
+
+ _driver.manage().timeouts().
+ implicitlyWait(10, TimeUnit.SECONDS);
+
+ return true;
+ }
+
+ public boolean isMobile(){
+ if(_driver.manage().window().getSize().width <= 800)
+ return true;
+ else return false;
+ }
}
\ No newline at end of file
diff --git a/src/test/java/io/lazycoder/pages/noauth/BlogPage.java b/src/test/java/io/lazycoder/pages/noauth/BlogPage.java
new file mode 100644
index 0000000..9fe3c6f
--- /dev/null
+++ b/src/test/java/io/lazycoder/pages/noauth/BlogPage.java
@@ -0,0 +1,15 @@
+package io.lazycoder.pages.noauth;
+
+import io.lazycoder.pages.basePage;
+
+public class BlogPage extends basePage {
+ static String title = "Blog";
+ static String url = "";
+
+ public BlogPage() {
+ super(url,title);
+ if(!_driver.getCurrentUrl().contains("lazycoder.io")){
+ _driver.get(_properties.getProperty("baseurl"));
+ }
+ }
+}
diff --git a/src/test/java/io/lazycoder/pages/noauth/homePage.java b/src/test/java/io/lazycoder/pages/noauth/homePage.java
index ab053fe..a5221a5 100644
--- a/src/test/java/io/lazycoder/pages/noauth/homePage.java
+++ b/src/test/java/io/lazycoder/pages/noauth/homePage.java
@@ -1,6 +1,10 @@
package io.lazycoder.pages.noauth;
+import io.lazycoder.helpers.User;
+import io.lazycoder.pages.admin.ChatBox;
+import io.lazycoder.pages.admin.adminBase;
import io.lazycoder.pages.basePage;
+import org.openqa.selenium.By;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.support.FindBy;
import org.openqa.selenium.support.How;
@@ -13,13 +17,44 @@ public class homePage extends basePage {
static String url = "";
static String title = "Lazy Coder";
+ By usernameField = By.cssSelector("");
+ By passwordField = By.cssSelector("");
+ By submitButton = By.cssSelector("");
+
+ By chatButton = By.className("convertfox-chat");
+
+ By BlogPageNavigation = By.cssSelector("a[href*='/blog']");
+ By menuButton = By.cssSelector("#menu-toggle");
@FindBy(how = How.ID, using = "nav-login")
WebElement loginButton;
public homePage() {
super(url,title);
+ if(!_driver.getCurrentUrl().contains("lazycoder.io")){
+ _driver.get(_properties.getProperty("baseurl"));
+ }
}
+ public adminBase loginAs(User user){
+ type(user.userName, usernameField);
+ type(user.password, passwordField);
+ clickOn(submitButton);
+ return new adminBase();
+ }
+
+ public ChatBox openChat(){
+ isElementVisibleNow(chatButton, 10);
+ clickOn(chatButton);
+ return new ChatBox();
+ }
+ public BlogPage GoToBlog(){
+ if(isMobile()){
+ clickOn(menuButton);
+ }
+ clickOn(BlogPageNavigation, 1);
+ return new BlogPage();
+ }
+
}
diff --git a/src/test/java/io/lazycoder/pages/noauth/logOutPage.java b/src/test/java/io/lazycoder/pages/noauth/logOutPage.java
new file mode 100644
index 0000000..e5d513c
--- /dev/null
+++ b/src/test/java/io/lazycoder/pages/noauth/logOutPage.java
@@ -0,0 +1,15 @@
+package io.lazycoder.pages.noauth;
+
+import io.lazycoder.pages.basePage;
+
+public class logOutPage extends basePage {
+ /**
+ * init base page
+ *
+ * @param url the partial url to this page, if not matching current url then navigating to it
+ * @param title the title of the page
+ */
+ public logOutPage() {
+ super("/logged out", "Logged Out");
+ }
+}
diff --git a/src/test/java/io/lazycoder/tests/admin/settings.java b/src/test/java/io/lazycoder/tests/admin/settings.java
new file mode 100644
index 0000000..2ae2b78
--- /dev/null
+++ b/src/test/java/io/lazycoder/tests/admin/settings.java
@@ -0,0 +1,140 @@
+package io.lazycoder.tests.admin;
+
+import io.lazycoder.helpers.User;
+import io.lazycoder.tests.baseTest;
+import org.apache.commons.lang3.RandomStringUtils;
+import org.testng.annotations.Test;
+
+public class settings extends baseTest {
+
+ User user = new User(false);
+
+
+
+
+
+
+
+
+
+ public void settingsLevelSwitching(){
+
+ user.setNewPassword(RandomStringUtils.randomAlphabetic(7));
+ homepage.loginAs(user)
+ .switchToSettings()
+ .switchToCallSettingsTab()
+ .switchToVideoSettings()
+ .changeSettings().switchToAudioSettings()
+ .switchToCallSettingsTab()
+ .switchToGeneralSettingsTab().switchToCallSettingsTab().switchToAudioSettings();
+
+ }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ @Test
+ public void TabsSwitching(){
+
+ user.setNewPassword(RandomStringUtils.randomAlphabetic(7));
+ homepage
+ .loginAs(user)
+ .switchToSettings();
+
+ }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ public void fillInfo(){
+ User self = new User();
+ User spouse = new User();
+ homepage
+ .loginAs(self)
+ .completeUserProfile()
+ .firstName(self.firstName)
+ .lastName(self.lastName)
+ .birthDate(self.birthdate)
+ .next()
+ .firstName(spouse.lastName)
+ .lastName(spouse.lastName)
+ .birthDate(spouse.birthdate)
+ .next();
+
+ }
+
+
+
+
+
+
+
+
+
+ public void fillhealthcare(){
+ User self = new User();
+ User spouse = new User();
+ homepage
+ .loginAs(self)
+ .switchToComplexForm()
+ .fillRequiredFields(self, spouse);
+
+ }
+
+ public void fillhealthcare(){
+ User self = new User();
+ User spouse = new User();
+ homepage
+ .loginAs(self)
+ .switchToComplexForm()
+ .fillRequiredFields(self, spouse);
+
+ }
+}
diff --git a/src/test/java/io/lazycoder/tests/baseTest.java b/src/test/java/io/lazycoder/tests/baseTest.java
index 1d65b49..a59a266 100644
--- a/src/test/java/io/lazycoder/tests/baseTest.java
+++ b/src/test/java/io/lazycoder/tests/baseTest.java
@@ -1,19 +1,26 @@
package io.lazycoder.tests;
+import io.appium.java_client.AppiumDriver;
+import io.appium.java_client.remote.MobileCapabilityType;
import io.lazycoder.Config;
+import io.lazycoder.helpers.User;
import io.lazycoder.pages.noauth.homePage;
+import io.qameta.allure.Attachment;
+import io.qameta.allure.Step;
import org.openqa.selenium.OutputType;
import org.openqa.selenium.TakesScreenshot;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
+import org.openqa.selenium.remote.DesiredCapabilities;
+import org.testng.ITestResult;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.AfterSuite;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Parameters;
-import ru.yandex.qatools.allure.annotations.Attachment;
-import ru.yandex.qatools.allure.annotations.Parameter;
-import ru.yandex.qatools.allure.annotations.Step;
+
+import java.net.MalformedURLException;
+import java.net.URL;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@@ -31,6 +38,7 @@ public class baseTest > {
protected static HashMap store;
private Config config;
public homePage homepage;
+ private User user;
public baseTest(){
this.store = new HashMap() ;
@@ -41,19 +49,26 @@ public baseTest(){
/***
* This is the test setup that read-ins the properties that are in the suite XML files and attaches them to the properties.
* The @Parameters is from TestNG and it pulls in the parameters that are defined in the suite XML files.
- * @param base The
- * @param pass
+
*/
- @Parameters({"baseurl", "admin_password"})
+// @Parameters({"baseurl", "admin_password"})
@BeforeMethod
- public void setup(@Parameter String base, @Parameter String pass)
- {
- _properties.put("baseurl", base);
- _properties.put("admin_password", pass);
+ public void setup() throws MalformedURLException {
+// _properties.put("baseurl", base);
+// _properties.put("admin_password", pass);
+ if(_properties.get("Browser").equals("Mobile Safari")){
+ DesiredCapabilities desiredCapabilities = new DesiredCapabilities();
+ desiredCapabilities.setCapability(MobileCapabilityType.BROWSER_NAME, "Safari");
+ URL url = new URL("http://127.0.0.1:4723/wd/hub");
+ _driver = new AppiumDriver(url, desiredCapabilities);
+ }
+ else{
+ _driver = new ChromeDriver();
+ _driver.manage().window().maximize();
+ }
saveToReport(_properties.toString());
saveToReport("new driver");
- _driver = new ChromeDriver();
- _driver.manage().window().maximize();
+
this.homepage = new homePage();
}
@@ -62,8 +77,11 @@ public void setup(@Parameter String base, @Parameter String pass)
* Closing the test and taking the final screenshot
*/
@AfterMethod
- public void teardown()
+ public void teardown(ITestResult result)
{
+ String testname = result.getMethod().getMethodName();
+
+
saveSceenShot("Test Complete");
saveToReport("closing driver");
_driver.quit();
diff --git a/src/test/java/io/lazycoder/tests/noauth/publicFacing.java b/src/test/java/io/lazycoder/tests/noauth/publicFacing.java
index b0371ba..79d5ed9 100644
--- a/src/test/java/io/lazycoder/tests/noauth/publicFacing.java
+++ b/src/test/java/io/lazycoder/tests/noauth/publicFacing.java
@@ -2,25 +2,42 @@
import io.lazycoder.pages.noauth.homePage;
import io.lazycoder.tests.baseTest;
+import io.qameta.allure.Feature;
+import io.qameta.allure.Story;
+import org.openqa.selenium.Dimension;
import org.testng.annotations.Test;
-import ru.yandex.qatools.allure.annotations.Features;
-import ru.yandex.qatools.allure.annotations.Stories;
+
/**
* Created by Andrew Krug on 1/16/2017.
*/
@Test
-@Features("Public Facing Pages Load")
+@Feature("Public Facing Pages Load")
public class publicFacing extends baseTest {
- @Stories("Home Page Loads")
+ @Story("Home Page Loads")
public void homePageLoads(){
homepage.navigateToThisPage().titleShouldBeExpected();
}
- @Stories("About Page Loads")
- public void haboutPageLoads(){
+ @Story("Blog Page Loads")
+ public void BlogPageLoads(){
+
+ homepage.GoToBlog().titleShouldBeExpected();
+ }
+
+ @Story("Mobile Blog Page Loads")
+ public void MobileBlogPageLoads(){
+ _driver.manage().window().setSize(new Dimension(800, 600));
+ homepage.GoToBlog().titleShouldBeExpected();
+ }
+
+
+ @Story("Chat Loads")
+ public void ChatLoads(){
homePage page = new homePage();
- page.navigateToThisPage().titleShouldBeExpected();
+ page.openChat();
}
+
+
}
\ No newline at end of file
diff --git a/src/test/resources/config.properties b/src/test/resources/config.properties
index e69de29..7ff2165 100644
--- a/src/test/resources/config.properties
+++ b/src/test/resources/config.properties
@@ -0,0 +1,4 @@
+Browser=Chrome
+Browser.Version=63.0
+Stand=Production
+baseurl=https://lazycoder.io
\ No newline at end of file