Share
Explore

SDET evaluation

FTTEM01S1_2512(2 Hours)

Task 1: Web Page Development (HTML & CSS) [45 min]

Objective: Build a structured web page using HTML & CSS that includes lists, tables, and forms.

Requirements:

Create an HTML file (index.html) with the following:
A header with the text "SDET Evaluation Page"
A navigation menu with links: Home, About, Contact
A main content section containing:
A heading: "Welcome to the SDET Evaluation"
A paragraph with sample text
An ordered list with three software testing types
A table with three columns: Test Type, Description, Example
A form with:
Name field (required)
Email field (required, must accept only valid email format)
Dropdown to select "Functional" or "Non-Functional" Testing
Submit button
Create a CSS file (style.css) with the following styles:
The header should have a blue background and white text
The navigation bar should have horizontal links with spacing
The table should have bordered cells and alternating row colors
The form should be styled with proper spacing and borders

Task 2: Functional Testing (Test Cases + Execution) [40 min]

Objective: Design and execute test cases for the contact form created in Task 1.

Requirements:

Write 5 functional test cases in the following format:
Test Case ID
Test Steps
Expected Result
Execute the test cases on the form and document the results.
Example Test Case:
Table 1
Test Case ID
Test Steps
Expected Result
TC001
Open the form, enter a valid name and email, select a testing type, and click submit.
Form submission successful.
There are no rows in this table
Deliverables:
A test case document (test_cases.docx or .xlsx)
Screenshots of execution results

Task 3: Software Testing Life Cycle (STLC) Mind Map & Test Plan [35 min]

Objective: Illustrate key software testing concepts, including STLC, test strategy, and test planning.

Requirements:

Mind Map:
Create a mind map that includes:
Software Testing Types
Functional vs Non-Functional Testing
Software Testing Life Cycle (STLC) Phases
Test Plan (Short Document)
Write a brief test plan covering:
Scope (What will be tested?)
Test Objectives
Testing Levels to be applied (Unit, Integration, System)
Functional and Non-Functional Testing types used

FTTEM01S2_2512(2 hours)

Task 1: Create Test Scenarios for an Online Shopping Cart

Scenario: You are testing the shopping cart functionality for an e-commerce website.
Task:
Identify at least 5 different test scenarios for the shopping cart, considering different conditions.
Present the scenarios in a structured table format.

Task 2: Apply Equivalence Partitioning & Boundary Value Analysis

Scenario: A payment gateway requires users to enter a 6-digit security PIN.
Task:
Design test cases using Equivalence Partitioning:
Define valid and invalid input partitions.
Design test cases using Boundary Value Analysis:
Identify the boundary values and create at least 4 test cases.

Task 3: Create Test Cases for a Login Page (Positive & Negative)

Scenario: You are testing the login functionality of a website.
Task:
Write at least 6 test cases, including:
Valid login
Invalid login (wrong credentials)
Empty field validation
SQL Injection attempt
Password case sensitivity
Session timeout behavior
Use the format: Test Case ID, Description, Steps, Expected Result.
Transactions with null or undefined amounts.

Task 4: Filter and Analyze Subscription Data Using Higher-Order Functions

Scenario:

The company wants to analyze customer subscriptions and improve premium user engagement. You have been given a dataset of users and need to filter out "Premium" members and count them.
You receive this dataset:
const users = [
{ name: "Alice", subscription: "Free", loginCount: 12 },
{ name: "Bob", subscription: "Premium", loginCount: 40 },
{ name: "Charlie", subscription: "Free", loginCount: 5 },
{ name: "David", subscription: "Premium", loginCount: 65 }
];

Your Task:

Filter out Premium users.
Sort them by loginCount in descending order
Print the names of the top 2 most engaged Premium users.

FTTEM02S1_2510(2 Hours)

Task 1: Implement a Java Program for Basic Arithmetic Operations

Scenario:

You are building a calculator application that can perform addition, subtraction, multiplication, and division based on user input.

Your Task:

Write a Java program that:
Takes two numbers as input from the user.
Asks the user to choose an operation (+, -, *, /).
Performs the chosen operation and displays the result.
Handle edge cases, such as:
Division by zero should return "Error: Cannot divide by zero".
Invalid operation input should display "Invalid operation selected".
Ensure that the program uses proper data types and exception handling.

Task 2: Automate Login Testing Using Cypress

Scenario:

You are testing the login functionality of a web application.

Website for Testing:

Your Task:

Write a Cypress test script that:
Opens the login page.
Enters valid credentials (username & password).
Clicks the login button.
Verifies that the user is redirected to the dashboard.
Modify the script to test invalid logins:
Test empty fields.
Test wrong password.
Ensure error messages appear correctly.

Task 3: Validate UI Elements in an E-Commerce Cart

Scenario:

In Above task After login Go to Dashboard and Perform below task.

Website for Testing:

Your Task:

Write a Cypress test that:
Adds a product to the cart.
Verifies that the cart updates correctly.
Removes the product

FTTEM02S2_2512(2 Hour)

Task 1: Validate Login Page Elements Using Cypress Assertions

Scenario:

You are testing the login functionality of an application. You need to verify that the login page has the correct elements and error messages using Cypress assertions.

Website for Testing:

Your Task:

Write a Cypress test script that:
Visits the login page.
Validates that username & password fields exist (.should('exist')).
Verifies the placeholder text (.should('have.attr', 'placeholder', 'Enter your username')).
Checks that the login button is visible and enabled (.should('be.visible').should('not.be.disabled')).
Extend the test to:
Enter wrong credentials, submit, and verify the error message.
Validate that the error message matches expected text (.should('have.text', 'Invalid Username or Password')).

Task 2: Explicit Assertions for Contact Form Submission

Scenario:

You need to test the contact form submission on a web application and validate the form responses using explicit assertions.

Website for Testing:

Your Task:

Create a Cypress test script that:
Fills in the Name, Email, and Message fields.
Clicks the Submit button.
Captures the success message and asserts its text and visibility.
Use explicit assertions (expect()) to:
Validate that the form is cleared after submission.
Ensure the message contains the expected confirmation text.

Task 3: Validate Dynamic Elements and Visibility

Scenario:

You need to verify visibility changes of elements on a webpage when triggered by a user action.

Website for Testing:

Your Task:

Create a Cypress test script that:
Visits the webpage and checks if a hidden element exists but is not visible (.should('exist').should('not.be.visible')).
Clicks a button that makes the hidden element appear.
Asserts that the element becomes visible (.should('be.visible')).
Bonus: Add a test that waits for an element to disappear and asserts it is removed.

Task 4: Validate Checkbox, Dropdown, and Radio Button Interactions

Scenario:

You need to verify the functionality of checkboxes, dropdowns, and radio buttons in a form.

Website for Testing:

Your Task:

Write a Cypress test script that:
Checks a checkbox and verifies it is selected (.should('be.checked')).
Unchecks the checkbox and ensures it is not checked.
Selects an option from a dropdown and validates the selection (.should('have.value', 'Option 2')).
Clicks a radio button and ensures it is selected.

Task 5: Extract and Validate Text from Web Elements

Scenario:

You need to extract and validate text dynamically displayed on a webpage.

Website for Testing:

Your Task:

Create a Cypress test script that:
Extracts text from a paragraph (.invoke('text')).
Uses .should('have.text', 'Expected Text') to validate it.
Uses .include('Expected') for partial text validation.
Compare Cypress commands (cy.get()) with jQuery methods (.text()).

FTTEM03S1_2512(2 Hour)

Task 1: WebDriver Setup & Navigation Commands (30 minutes)

Objective: Verify Selenium WebDriver installation and use basic navigation commands.

Instructions:

Set up Selenium WebDriver using Java.
Open Google Chrome and navigate to .
Fetch and print the title of the webpage.
Perform the following actions:
Go back to Selenium website.
Go forward to Wikipedia.
Refresh the Wikipedia page.
Close the browser.

Task 2: Locators & Web Element Commands (40 minutes)

Objective: Identify elements using various locators and perform actions on web elements.

Instructions:

Navigate to .
Locate and interact with the following elements:
Text Box: Enter your first name, last name, and job title.
Radio Button: Select an Education Level.
Check Box: Select Preferred method of transport.
Dropdown: Choose an Experience level from the dropdown.
Button: Click Submit.
Retrieve and print the entered values.

Task 3: Dynamic Elements & XPath Usage (45 minutes)

Objective: Handle dynamic elements using XPath and CSS selectors.

Instructions:

Navigate to .
Search for "Selenium WebDriver Book".
Capture the first three product names and their prices.
Print the names and prices in the console.
Use both relative XPath and CSS Selectors to fetch product details.

Task 4: Data-Driven Testing with Selenium & TestNG (30-40 minutes)

Objective: Implement a TestNG framework and read test data from an external source.

Instructions:

Create a TestNG test that reads login credentials from an Excel file (Apache POI).
Navigate to .
Use a data provider to perform login tests with multiple credentials.
Validate whether login is successful by checking if the "Log out" button is displayed.
Log results (pass/fail) in a separate Excel file.
Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.