top of page

Selenium
Test Suite for Electro Webshop

 
 
View the whole project on GitHub

Electro Webshop is a demo e-commerce platform showcasing electronic and electrical products. It’s designed to provide a smooth, user-friendly shopping experience for tech enthusiasts and professionals, with a wide product range and intuitive navigation.

​

In this project, I developed automated tests to validate key user flows, such as changing a password, placing an order, and tracking an existing order - ensuring these core features function reliably and as expected.

Tech Stack

  • Selenium Web Driver

  • NUnit

  • C#

 
 

Test Suite Features

 
  • Change Password Test
    • Verifies that a user can successfully change their password.

    • Ensures the user can log in with the updated password.

  • Track Order Test
    • Tests that a user can order a product through the shopping cart.

    • Confirms the functionality of the order tracking system.

 

This project follows the Page Object Model (POM) design pattern, which promotes clean, maintainable, and reusable test code by separating page interactions into dedicated classes.

ElectroWebsite-3.png

Below are some of the methods I’ve written that are used within the test cases. These methods help streamline common actions and improve the readability and maintainability of the test suite.

Changing password functionality

This method, ChangingPassword, is written in C# using Selenium and automates the process of updating a user's password on the "Account Details" page. It takes three string parameters: the current password, the new password, and the confirmation of the new password. The method locates the relevant input fields using CSS selectors and interacts with them using Selenium's Actions class to simulate user behavior like moving the cursor to each field. Thread.Sleep(1000) adds a short delay to ensure that the elements are properly loaded before interaction. It then uses WebDriverWait to wait until each field is clickable before sending the corresponding input values. This ensures that the password change process is performed smoothly and reliably during automated testing.

Verifying order Id and Status

In this test, the method VerifyOrderIdAndStatus checks whether the order ID and order status displayed on the "Track Your Order" page match the expected values. It retrieves the text of the order number and status from the page using CSS selectors, then uses assertions to verify that the order ID matches the provided orderNumber and that the order status is correctly set to "On hold." This helps ensure that order tracking functionality is displaying accurate and up-to-date information to the user.

To see the full project, please visit the GitHub repository.

Let's connect!

Drop me a message

© 2025 by Simona Mitkovska.

Based in Amsterdam.

Find me on

  • LinkedIn
  • GitHub
bottom of page