0% found this document useful (0 votes)
32 views11 pages

Softwarre Project Report

Uploaded by

Vishali ?
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
32 views11 pages

Softwarre Project Report

Uploaded by

Vishali ?
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 11

CSE 420 SOFTWARE ENGINEERING AND

TESTING
Project Report

Name : VISHALI MS

Unique ID : E0321004

Year : IV

Term : II

Department : AIDA

Faculty Name : Ms. Santhiya C

Academic Year : 2024-2025

Sugar Cosmetic Website


OBJECTIVE
The primary objective of this project is to create a fully functional clone of the Sugar
Cosmetics website, showcasing the application of modern web development technologies and
principles. The focus will be on key functionalities, such as product browsing and interaction,
allowing users to explore a wide array of cosmetic products with sorting and filtering options
for a personalized shopping experience.
Additionally, the project will include secure user authentication, facilitating easy
signup and login for convenient account management. Other features will comprise a
shopping cart and a wishlist, enabling users to add items, save favorites, and easily manage
their selected products.
The design will be responsive to optimize the user experience across all devices, and
LocalStorage will be utilized for efficient data management, ensuring that user data and cart
items remain persistent and are not lost. This project offers students hands-on experience in
web development using HTML, CSS, and JavaScript while promoting teamwork and group
problem-solving skills. Overall, it serves as a proof of concept for establishing a strong, user-
friendly e-commerce solution in a digital environment.

ADVANTAGES
1. Improved User Experience:
The project makes website navigation easier with intuitive features such as product
sorting, filtering, and wishlists, allowing users to find and manage their desired
products easily.
2. Time-Saving Automation:
Automates repetitive tasks like logging in and adding items to the cart, streamlining
the shopping process and making it faster and more efficient for frequent shoppers.
3. Design:
In response to your question, I do not require the company's sponsorship for any
immigration-related employment benefits, such as a work visa or work permit, either
now or in the future.
4. Learning & Practicability:
It also provides a hands-on demonstration of web development skills, illustrating how
proficiency in HTML, CSS, and JavaScript contributes to building a fully functional
e-commerce platform.
5. E-commerce Functional Understanding:
Provides clear insights into the key features of a modern e-commerce platform,
including user authentication, product management, and shopping cart functionality,
which are essential for any online retail company.

SOURCE CODE(selenium)
package com.sample;

import java.net.URL;

import org.checkerframework.checker.units.qual.s;
import org.openqa.selenium.Alert;
import org.openqa.selenium.By;
import org.openqa.selenium.Keys;
import org.openqa.selenium.Platform;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.remote.RemoteWebDriver;
import org.openqa.selenium.interactions.Actions;
import org.openqa.selenium.support.ui.Select;
import java.util.concurrent.TimeUnit;

public class exp4{


public static void main(String[] args)
{
System.setProperty("webdriver.chrome.driver","C:\\Webdriver\\
chromedriver-win64\\chromedriver.exe");

WebDriver driver = new ChromeDriver();

try {
driver.get("http://127.0.0.1:5502/index.html");
driver.manage().window().maximize();

WebElement logintab = driver.findElement(By.id("loginpage"));


logintab.click();
System.out.println("Navigated to login tab");

//navigating to Signup page


WebElement signupTab = driver.findElement(By.id("register-toggle"));
signupTab.click();

//filling details in signup page


WebElement name = driver.findElement(By.id("register-name"));
WebElement email = driver.findElement(By.id("register-email"));
WebElement mobile = driver.findElement(By.id("register-mobile"));
WebElement confirmPassword = driver.findElement(By.id("register-pass"));
WebElement signupButton = driver.findElement(By.id("register-btn"));

name.sendKeys("Selenium Test");
email.sendKeys("[email protected]");
mobile.sendKeys("1234567890");
confirmPassword.sendKeys("1234567890");
signupButton.click();
System.out.println("Successfully Registered User with Selenium");
Thread.sleep(3000);

// Check Login page


WebElement username = driver.findElement(By.id("login-user"));
WebElement password1 = driver.findElement(By.id("login-pass"));
WebElement loginButton = driver.findElement(By.id("sub"));

username.sendKeys("[email protected]");
password1.sendKeys("1234567890");
loginButton.click();
System.out.println("Successfully LoggedIn");
Thread.sleep(3000);

// Check Home page


WebElement homeElement = driver.findElement(By.name("logo"));
homeElement.click();
System.out.println("Successfullt Loaded HOME Page");
Thread.sleep(1000);

// Check various tabs in Home page


WebElement tab1 = driver.findElement(By.name("tab1"));
tab1.click();
System.out.println("Successfully navigated to MAKEUP Tab");
Thread.sleep(1000);

WebElement tab2 = driver.findElement(By.name("tab2"));


tab2.click();
System.out.println("Successfully Navigated to BRUSHES Tab");
Thread.sleep(1000);

// Scroll up and down


Actions actions = new Actions(driver);
actions.sendKeys(Keys.PAGE_DOWN).perform();
Thread.sleep(1000);
actions.sendKeys(Keys.PAGE_UP).perform();
Thread.sleep(1000);
System.out.println("Successfully performed Scrool up and Down");

// Mouse hover
WebElement hoverElement = driver.findElement(By.name("tab3"));
actions.moveToElement(hoverElement).perform();
Thread.sleep(1000);
System.out.println("Successfully hovered menu");

//Composite Action
WebElement priceSort = driver.findElement(By.id("priceSort"));
actions.click(priceSort).perform();
// Step 2: Locate the dropdown list and select the value "high"
WebElement dropdown = driver.findElement(By.id("priceSort")); // Assuming it's a
select element
Select select = new Select(dropdown);
select.selectByValue("high");
System.out.println("Successfully Done Composite Action");

// Select a product to add to the cart


WebElement button = driver.findElement(By.xpath("(//button[@id='btn1'])
[1]")); //XPath
button.click();
Thread.sleep(1000);
System.out.println("Successfully added a product to cart");
Thread.sleep(1000);

WebElement cartButton = driver.findElement(By.id("cart"));


cartButton.click();
Thread.sleep(3000);

WebElement payment = driver.findElement(By.id("checkOut"));


payment.click();
System.out.println("Successfully navigated to payment Method");
Thread.sleep(5000);

WebElement namel = driver.findElement(By.id("user"));


WebElement cardnumber = driver.findElement(By.id("card"));
WebElement expdate = driver.findElement(By.id("expiry"));
WebElement otp = driver.findElement(By.id("cvv"));
WebElement payButton = driver.findElement(By.id("pay"));

namel.sendKeys("Selenium");
cardnumber.sendKeys("1234567890");
expdate.sendKeys("07/2025");
otp.sendKeys("123");
payButton.click();
System.out.println("Successfully finished to payment details");
Thread.sleep(3000);

WebElement otp1 = driver.findElement(By.id("user"));


WebElement submitButton = driver.findElement(By.id("sub"));

otp1.sendKeys("1234");
submitButton.click();
System.out.println("Successfully finished to otp page");

// Handle alert box


Alert alert = driver.switchTo().alert();
//String alertMessage = alert.getText(); // Optional: Fetch the alert text
//System.out.println("Alert Message: " + alertMessage);
alert.accept(); // Click OK on the alert
System.out.println("Successfully handled alert and returned to index.html");
Thread.sleep(2000);

// Check Logout
WebElement logout = driver.findElement(By.id("logout"));
logout.click();
Thread.sleep(1000);
System.out.println("Successfully logged out");

Thread.sleep(1000);
System.out.println("--- All Test completed successfully---");

}
catch (Exception e) {
e.printStackTrace();
}

finally {
driver.quit();
}
}
}

OUTPUT(SCREENSHOTS)
FUTURE ENHANCEMENT
1. Advanced Search Functionality:

 Implement filters for categories, price range, and ratings


 Include search suggestions as users type

2. Improved Payment:

 Integration of Multiple Gateways like PayPal, Stripe


 Allow the user to save their payment method for faster checkout

3. Order Tracking:
 Include an option so users can track their orders in real time
 Send email/SMS for update

4. Personalized Recommendation:

 Application of the machine learning algorithm in suggesting products based on user


behavior and preferences.
 Create a "Recommended for You" section on the homepage.

5. Customer Support Features:

 Implement a live chat feature for real-time customer support.


 Create a comprehensive FAQ section to assist users.

CONCLUSION
The Sugar Cosmetics project has successfully developed a fully functional e-commerce
platform that incorporates essential features such as product listings, a shopping cart, user
authentication (utilizing Firebase), and a payment gateway. This project leverages
technologies such as HTML, CSS, JavaScript, and Firebase for user authentication,
emphasizing the importance of user-centered design and effective data management through
local storage.

In addition to enhancing technical skills, this initiative underscores the value of collaboration
in creating modern, user-friendly web applications. With the proposed future enhancements,
the project has the potential to evolve into a comprehensive framework for managing and
developing e-commerce platforms, ultimately ensuring optimal performance and user
satisfaction.

You might also like