Skip to content

Commit 03bece6

Browse files
committed
Update version 1.9.4
1 parent 9d49fc3 commit 03bece6

File tree

14 files changed

+94
-40
lines changed

14 files changed

+94
-40
lines changed

pom.xml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
<groupId>com.anhtester.core</groupId>
88
<artifactId>anhtester-selenium-java</artifactId>
9-
<version>1.9.4-preview</version>
9+
<version>1.9.4</version>
1010
<packaging>jar</packaging>
1111
<name>AutomationFrameworkSelenium</name>
1212
<url>https://github.com/anhtester/AutomationFrameworkSelenium</url>
@@ -33,11 +33,11 @@
3333
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
3434
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
3535
<java-compiler.version>11</java-compiler.version>
36-
<maven-surefire-plugin.version>3.0.0</maven-surefire-plugin.version>
36+
<maven-surefire-plugin.version>3.1.0</maven-surefire-plugin.version>
3737
<maven-compiler-plugin.version>3.11.0</maven-compiler-plugin.version>
38-
<selenium.version>4.9.0</selenium.version>
39-
<testng.version>7.4.0</testng.version>
40-
<webdrivermanager.version>5.3.2</webdrivermanager.version>
38+
<selenium.version>4.9.1</selenium.version>
39+
<testng.version>7.8.0</testng.version>
40+
<webdrivermanager.version>5.3.3</webdrivermanager.version>
4141
<aspectjweaver.version>1.9.19</aspectjweaver.version>
4242
<ashot.version>1.5.4</ashot.version>
4343
<log4j.version>2.20.0</log4j.version>
@@ -50,7 +50,7 @@
5050
</allure.cmd.download.url>
5151
<extentreports.version>5.0.9</extentreports.version>
5252
<apache-poi.version>5.2.3</apache-poi.version>
53-
<commons-io.version>2.11.0</commons-io.version>
53+
<commons-io.version>2.12.0</commons-io.version>
5454
<owner.version>1.0.12</owner.version>
5555
<assertj.version>3.24.2</assertj.version>
5656
<datafaker.version>1.9.0</datafaker.version>
@@ -61,7 +61,7 @@
6161
<google.guava.version>31.1-jre</google.guava.version>
6262
<javax.mail.version>1.6.2</javax.mail.version>
6363
<zip.version>1.15</zip.version>
64-
<jackson.version>2.15.0</jackson.version>
64+
<jackson.version>2.15.1</jackson.version>
6565

6666
<!-- Suite XML path -->
6767
<suite.signin.simple>src/test/resources/suites/SignIn-simple.xml</suite.signin.simple>

src/main/java/anhtester/com/driver/BrowserFactory.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,10 @@ public ChromeOptions getOptions() {
4747
options.addArguments("--disable-infobars");
4848
options.addArguments("--disable-notifications");
4949
options.addArguments("--remote-allow-origins=*");
50+
5051
if (Boolean.valueOf(FrameworkConstants.HEADLESS) == true) {
5152
options.addArguments("--headless=new");
53+
options.addArguments("window-size=1800,900");
5254
}
5355

5456
return options;
@@ -66,6 +68,7 @@ public FirefoxOptions getOptions() {
6668
FirefoxOptions options = new FirefoxOptions();
6769
if (Boolean.valueOf(FrameworkConstants.HEADLESS) == true) {
6870
options.addArguments("--headless");
71+
options.addArguments("window-size=1800,900");
6972
}
7073

7174
return options;
@@ -94,6 +97,7 @@ public EdgeOptions getOptions() {
9497

9598
if (Boolean.valueOf(FrameworkConstants.HEADLESS) == true) {
9699
options.addArguments("--headless=new");
100+
options.addArguments("window-size=1800,900");
97101
}
98102

99103
return options;

src/main/java/anhtester/com/keywords/WebUI.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2374,12 +2374,12 @@ public static WebElement waitForElementVisible(By by) {
23742374
if (check == true) {
23752375
return wait.until(ExpectedConditions.visibilityOfElementLocated(by));
23762376
} else {
2377-
scrollToElementToTop(by);
2377+
scrollToElementToBottom(by);
23782378
return wait.until(ExpectedConditions.visibilityOfElementLocated(by));
23792379
}
23802380
} catch (Throwable error) {
2381-
Assert.fail("Timeout waiting for the element Visible. " + by.toString());
23822381
LogUtils.error("Timeout waiting for the element Visible. " + by.toString());
2382+
Assert.fail("Timeout waiting for the element Visible. " + by.toString());
23832383
}
23842384
return null;
23852385
}

src/main/java/anhtester/com/report/AllureManager.java

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@
2121
import java.io.File;
2222
import java.io.IOException;
2323

24+
import static anhtester.com.constants.FrameworkConstants.VIDEO_RECORD;
25+
import static anhtester.com.constants.FrameworkConstants.YES;
2426
import static org.openqa.selenium.OutputType.BYTES;
2527

2628
public class AllureManager {
@@ -84,19 +86,21 @@ public static String attachHtml(String html) {
8486
}
8587

8688
public static void addAttachmentVideoAVI() {
87-
try {
88-
//Get file Last Modified in folder
89-
File video = FileHelpers.getFileLastModified("ExportData/Videos");
90-
if (video != null) {
91-
Allure.addAttachment("Failed test Video record AVI", "video/avi", Files.asByteSource(video).openStream(), ".avi");
92-
} else {
93-
LogUtils.warn("Video record not found.");
94-
LogUtils.warn("Can not attachment Video in Allure report");
89+
if (VIDEO_RECORD.toLowerCase().trim().equals(YES)) {
90+
try {
91+
//Get file Last Modified in folder
92+
File video = FileHelpers.getFileLastModified("ExportData/Videos");
93+
if (video != null) {
94+
Allure.addAttachment("Failed test Video record AVI", "video/avi", Files.asByteSource(video).openStream(), ".avi");
95+
} else {
96+
LogUtils.warn("Video record not found.");
97+
LogUtils.warn("Can not attachment Video in Allure report");
98+
}
99+
100+
} catch (IOException e) {
101+
LogUtils.error("Can not attachment Video in Allure report");
102+
e.printStackTrace();
95103
}
96-
97-
} catch (IOException e) {
98-
LogUtils.error("Can not attachment Video in Allure report");
99-
e.printStackTrace();
100104
}
101105
}
102106

src/test/java/anhtester/com/listeners/AllureListener.java

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,15 @@
11
package anhtester.com.listeners;
22

3+
import anhtester.com.driver.DriverManager;
4+
import anhtester.com.report.AllureManager;
5+
import io.qameta.allure.Allure;
36
import io.qameta.allure.listener.TestLifecycleListener;
7+
import io.qameta.allure.model.Status;
48
import io.qameta.allure.model.TestResult;
9+
import org.openqa.selenium.OutputType;
10+
import org.openqa.selenium.TakesScreenshot;
11+
12+
import java.io.ByteArrayInputStream;
513

614
public class AllureListener implements TestLifecycleListener {
715

@@ -31,11 +39,12 @@ public void afterTestStart(TestResult result) {
3139

3240
@Override
3341
public void beforeTestStop(TestResult result) {
34-
// if (result.getStatus() == Status.FAILED || result.getStatus() == Status.SKIPPED || result.getStatus() == Status.BROKEN) {
35-
// if (DriverManager.getDriver() != null) {
36-
// Allure.addAttachment(result.getName(), new ByteArrayInputStream(((TakesScreenshot) DriverManager.getDriver()).getScreenshotAs(OutputType.BYTES)));
37-
// }
38-
// }
42+
if (result.getStatus() == Status.FAILED || result.getStatus() == Status.SKIPPED || result.getStatus() == Status.BROKEN) {
43+
if (DriverManager.getDriver() != null) {
44+
Allure.addAttachment(result.getName() + "_Failed_Screenshot", new ByteArrayInputStream(((TakesScreenshot) DriverManager.getDriver()).getScreenshotAs(OutputType.BYTES)));
45+
}
46+
AllureManager.addAttachmentVideoAVI();
47+
}
3948
}
4049

4150
@Override

src/test/java/anhtester/com/listeners/TestListener.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -178,11 +178,9 @@ public void onTestFailure(ITestResult iTestResult) {
178178
ExtentReportManager.addScreenShot(Status.FAIL, getTestName(iTestResult));
179179
ExtentReportManager.logMessage(Status.FAIL, iTestResult.getThrowable().toString());
180180

181-
AllureManager.takeScreenshotToAttachOnAllureReport();
181+
//AllureManager.takeScreenshotToAttachOnAllureReport();
182182
//AllureManager.saveTextLog(iTestResult.getThrowable().toString());
183183

184-
AllureManager.addAttachmentVideoAVI();
185-
186184
}
187185

188186
@Override

src/test/java/anhtester/com/projects/cms/admin/pages/logins/LoginPageCMS.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22

33
import anhtester.com.constants.FrameworkConstants;
44
import anhtester.com.helpers.PropertiesHelpers;
5-
import anhtester.com.keywords.WebUI;
65
import anhtester.com.projects.cms.CommonPageCMS;
76
import anhtester.com.projects.cms.users.pages.dashboard.DashboardPage;
87
import org.openqa.selenium.By;
@@ -12,7 +11,7 @@
1211
public class LoginPageCMS extends CommonPageCMS {
1312

1413
private By closeAdvertisementPopup = By.xpath("//i[@class='la la-close fs-20']");
15-
private By buttonLogin = By.xpath("//a[normalize-space() = 'Login' and @class = 'text-reset d-inline-block opacity-60 py-2']");
14+
private By buttonLogin = By.xpath("(//a[normalize-space()='Registration']/parent::li)/preceding-sibling::li");
1615
private By buttonCopyAdminAcc = By.xpath("//button[normalize-space()='Copy']");
1716
private By buttonSubmitLogin = By.xpath("//button[normalize-space()='Login']");
1817
private By titleLoginPage = By.xpath("//h1[normalize-space() = 'Login to your account.']");
@@ -34,7 +33,7 @@ public void openLoginPage() {
3433
verifyElementVisible(titleLoginPage, "Login page is NOT displayed");
3534
}
3635

37-
public void verifyRedirectToAdminPage(){
36+
public void verifyRedirectToAdminPage() {
3837
verifyElementVisible(avatarProfile, "Can not redirect to Admin page.");
3938
}
4039

src/test/java/anhtester/com/projects/cms/users/pages/order/OrderPage.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
package anhtester.com.projects.cms.users.pages.order;
22

33
import anhtester.com.helpers.PropertiesHelpers;
4-
import anhtester.com.projects.cms.CommonPageCMS;
54
import anhtester.com.keywords.WebUI;
6-
import anhtester.com.projects.cms.users.pages.products.ProductInfoPageCMS;
5+
import anhtester.com.projects.cms.CommonPageCMS;
76
import anhtester.com.projects.cms.users.pages.dashboard.DashboardPage;
7+
import anhtester.com.projects.cms.users.pages.products.ProductInfoPageCMS;
88
import anhtester.com.utils.LogUtils;
99
import org.openqa.selenium.By;
1010

@@ -50,11 +50,13 @@ public void order(String noteForOrder) {
5050
String priceProduct01AsString = WebUI.getTextElement(ProductInfoPageCMS.productPrice).trim();
5151
WebUI.scrollToElementToBottom(buttonAddToCart);
5252
WebUI.clickElement(buttonAddToCart);
53-
WebUI.verifyElementVisible(popupAddToCartSucceeded, "Add to cart is failed");
53+
WebUI.waitForPageLoaded();
54+
WebUI.verifyElementVisible(popupAddToCartSucceeded, "Add to cart is failed. ");
5455
WebUI.clickElement(buttonBackToShopping);
5556
WebUI.waitForPageLoaded();
5657
WebUI.sleep(2);
5758
WebUI.setText(DashboardPage.inputSearchProduct, PropertiesHelpers.getValue("product_P02"));
59+
WebUI.waitForJQueryLoad();
5860
WebUI.sleep(3);
5961
WebUI.clickElement(By.xpath("//div[@id='search-content']//div[contains(text(),'" + PropertiesHelpers.getValue("product_P02") + "')]"));
6062
WebUI.waitForPageLoaded();

src/test/resources/config/config.properties

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ WAIT_SLEEP_STEP = 0
1616
# Browser default chrome, edge, firefox, safari
1717
BROWSER = chrome
1818
# headless mode only for chrome or firefox and local execution
19-
HEADLESS = false
19+
HEADLESS = true
2020
URL_CRM = https://rise.fairsketch.com/signin
2121
URL_CMS_ADMIN = https://cms.anhtester.com/login
2222
URL_CMS_USER = https://cms.anhtester.com
@@ -42,7 +42,7 @@ ZIP_FOLDER = no
4242
ZIP_FOLDER_PATH = reports/ExtentReports
4343
ZIP_FOLDER_NAME = ExtentReports.zip
4444
# Video Record
45-
VIDEO_RECORD = yes
45+
VIDEO_RECORD = no
4646
# override_reports --> yes or no
4747
# If no -> Report name will be like
4848
# - Windows_10_Tue_Oct_05_02_30_46_IST_2022_ExtentReports.html
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd" >
2+
3+
<suite name="Regression Tests Add Product CMS">
4+
5+
<test name="Tests Add Product CMS">
6+
<parameter name="BROWSER" value="chrome"/>
7+
<classes>
8+
<class name="anhtester.com.projects.cms.testcases.AddProductTest"/>
9+
</classes>
10+
</test>
11+
12+
</suite>

0 commit comments

Comments
 (0)