SOFTWARE TESTING EXERCISES

The key objective of Software Testing Exercises is to leverage Manual Testing & Automation Testing Skills gained from our project based Manual Testing Training & Test Automation Training. Especially from a hands-on and project perspective, so you could crack Testing Interviews and land a Software Tester Job. This strategy helps those aspiring to break into Software Testing in order to think laterally and moreover helps improve analytical skills & attention to details.

Software Testing Exercises

software testing exercises testing challenges

Testing Challenges
Tester Tested!
Try out our Software Testing Exercises!
Please note: Only if you are a trainee or enrolled for our online testing courses, email your Software Testing Exercise work in Excel format (with the Software Testing Exercise number) and we shall revert with with the answers for the attempted testing challenges.

SOFTWARE TESTING EXERCISES Hide Table of Contents

MANUAL TESTING TRAINING
SOFTWARE TESTING EXERCISES


Software Testing Exercise 1 - How many bugs can you find on this buggy windows calculator?

SOFTWARE TESTING EXERCISE 1: Calculator (Static Image simulating bugs)
Test Execution / Find Bugs

How many bugs can you find on this buggy windows calculator?!
Bug Count: Over 5
Software Testing Exercises - Calculator

Software Testing Exercise 2 - How many bugs can you find on this buggy Calendar?

SOFTWARE TESTING EXERCISE 2: Calendar (Static Image)
Test Execution / Find Bugs

How many bugs can you find on this buggy Calendar ?!
Bug Count: Over 5
Software Testing Exercises - Calendar

Software Testing Exercise 3 - How many bugs can you find on this Weather Forecast screen?

SOFTWARE TESTING EXERCISE 3: Weather App (Static Image)
Test Execution / Find Bugs

Weather app has 2 screens, screen 1 displays the weather forecast for first 5 days of the week and screen 2 shows weather forecast for further 5 days. How many bugs can you find on this Weather Forecast screenlet?
Bug Count: Over 10
Software-Testing-Exercises-Weather

Software Testing Exercise 4 - How many bugs can you detect on this Google accounts page?

SOFTWARE TESTING EXERCISE 4: Browser/Google accounts page (Static Image)
Test Execution / Find Bugs

A new browser has been designed and built, however not validated yet. When Google accounts page is loaded, the page is not rendered correctly and there are UI issues. How many bugs can you detect on this page?!
Bug Count: Over 10
Bugs Type: Typo, UI and Functional bugs
Software-Testing-Exercises-Google Account

Software Testing Exercise 5 - How many test scenarios can you derive for ATM Feature based on Design Spec?

SOFTWARE TESTING EXERCISE 5: ATM Withdrawal 'Other Amount' Feature - Design Spec
Test Analysis & Design

Derive Test Scenarios for the Withdrawal ‘Other Amount’ Feature. Business requirements and Design Spec are available for this ATM withdrawal feature.
Business Requirements:
WithdrawOther_BR011: Ability to select ‘Other Amount’ option whilst making a withdrawal instead of selecting pre-set (£) amounts.
WithdrawOther_BR012: Ability to withdraw valid amount for ‘Other Amount’ option whilst making withdrawal. Also the Maximum withdrawal amount allowed per day is £300 provided the customer has sufficient funds in the Account.

Software-Testing-Exercise-ATM-Withdrawal-design-spec

Software Testing Exercise 6 - How many test scenarios can you derive for ATM Feature based on Use Case?

SOFTWARE TESTING EXERCISE 6: ATM Withdrawal Other Amount Feature - USE CASE
Test Analysis & Design

Identify Test Conditions for the Withdrawal ‘Other Amount’ Feature. Functional Spec is available in the form of Use Case.

Pre-conditions
The bank card, account and PIN are valid.
Basic Flow
1. Initiate Withdraw – Customer inserts bank card into ATM
2. Verify Bank Card – ATM reads the account code from the bank card and checks if it is valid.
3. Enter PIN – ATM asks for the customer’s PIN code (4 digits)
4. Verify PIN – PIN is verified to determine PIN entered is the valid PIN for the account.
5. ATM Options – ATM displays the different options available. In this flow, the bank customer selects “Withdraw Cash”
6. Select Amount – For this flow the customer selects Withdraw Other Amount option
7. Enter Amount – customer enters valid amount (less than daily withdrawal limit £300) and has sufficient funds in Account (£500)
8. Authorisation – ATM initiates verification process with the Bank system by sending the authentication credentials and Amount information as a transaction. For this flow, the Bank System responds with the Authorisation to complete the cash withdrawal successfully and updates the account balance accordingly.
9. Dispense – Money is dispensed.
10. Return Card – The Bank Card is returned.
11. Receipt – The receipt is printed and dispensed. ATM also updates the internal log.

Alternative Flow 1 – Daily maximum withdrawal amount reached
In Basic Flow Step 7 – customer enters more than daily withdrawal limit > £300
At Basic Flow Step 8 – Authorisation, the Bank system returns a code indicating that, including this request for withdrawal, the customer has exceeded the maximum amount allowed in a 24 hour period, the ATM displays the appropriate message and rejoins the Basic Flow at Step 7 – Enter Amount.

Alternative Flow 2 – Insufficient Funds in Account
At Basic Flow Step 8 – Authorisation, the Banksystem returns a code indicating the account balance is less than the amount entered in Basic Flow Step 7 – Enter Amount, the ATM displays the appropriate message and rejoins the Basic Flow at Step 7 – Enter Amount.
Alternative Flow 3 – ATM out of Money
At Basic Flow Step 5 – ATM Options, if the ATM is out of money, the “Cash Withdraw” option will not be available.

Alternative Flow 4 – Insufficient funds in ATM
At Basic Flow Step 6 – Enter Amount, if the ATM contains insufficient funds to dispense the requested amount, an appropriate message will be displayed, and rejoins the basic flow at Step 7 – Enter Amount.
Alternative Flow 5 – Cancel withdrawal
The customer can, at any time, decide to terminate the transaction (Cancel). The transaction is stopped and the card ejected.

Associated Business Requirements: WithdrawOther_BR011 & WithdrawOther_BR012

Software Testing Exercise 7 - What Test Data conditions could you derive for the Test Scenarios identified before?

SOFTWARE TESTING EXERCISE 7: ATM Withdrawal 'Other Amount' Feature
Test Data Preparation

Prepare Test Data whilst considering adequate test coverage – for the Test Scenarios derived for the Withdrawal ‘Other Amount’ Feature.

Software Testing Exercise 8 - Would you be able to prepare a Test case you derive for a Test Scenario identified before?

SOFTWARE TESTING EXERCISE 8: ATM Withdrawal 'Other Amount' Feature
Test Case Preparation

Develop a Test Case for a “Positive” Test Scenario derived for Withdrawal ‘Other Amount’ Feature. Include Test Case definition components and Test Steps only.
TEST AUTOMATION TRAINING
SOFTWARE TESTING EXERCISES

Software Testing Exercise 9 - What Test Scenarios can be derived for this feature based on Agile User Stories?

SOFTWARE TESTING EXERCISE 9: Currency Converter Design mock-up
AGILE TESTING - SCRUM - Test Analysis

The plan for developing ‘Currency Converter’ App is two 1-week Sprints. Derive Test Scenarios for the Currency Converter feature by using the design mockup and based on Agile Scrum User Stories / User Acceptance Criteria.

SPRINT: 1
USER STORY-1:
As a user I want to convert rates from one currency to another so that I can perform various subsequent business functions based on the current rates.
UAC’s:
> I can input an amount for conversion
> I can select from and to currencies
> I have a provision to flip the from and to currencies after selection

USER STORY-2:
As a user I want to view the LIVE currency exchange rates so that I can perform various subsequent business functions based on the current rates.
UAC’s:
> I can view the from and to currency codes
> I can view the from and to currency names
> I can view the currency conversion computation for both the currencies
> I can view current date/time of conversion
> I have a provision to look at a chart that shows the rate history for the given day

SPRINT: 2
USER STORY-3:
As a user I want to convert the LIVE exchange rates again so that I can perform various subsequent business functions based on the current rates.
UAC’s:
> I can see the from and to currency codes
> I can use a default amount and perform a conversion
> I can change the default amount before conversion

software testing exercises - currency converter - design

Software Testing Exercise 10 - How many defects can you uncover for this Currency Converter App?

SOFTWARE TESTING EXERCISE 10: Currency Converter (Static App)
AGILE TESTING - SCRUM - Test Execution / Find Bugs

Currency Converter App has 3 Screens. Detect bugs based on the test scenarios derived from SOFTWARE TESTING EXERCISE 7 (Agile Testing); Perform exploratory testing.
software testing exercises - currency converter

Software Testing Exercise 11 - What Xpaths can you find for Search Engine (Dynamic Application)?

SOFTWARE TESTING EXERCISE 11: Search Engine (Dynamic Application)
Test Automation - Locators (XPATH)

Find XPATH for all the web elements including “Sort” drop down & Table web elements.

Note: Refer Search Engine dynamic application below.

Software Testing Exercise 12 - How do you automate a test case using Selenium WebDriver and Java?

SOFTWARE TESTING EXERCISE 12: Search Engine (Dynamic Application)
Test Automation - Selenium WebDriver & Java

Automate the following test case using Selenium WebDriver + Java:
“Verify that when user selects ‘Price highest’ option – the product price is listed in the descending order”

Note: Refer Search Engine dynamic application below.

Software Testing Exercise 13 - How do you automate a test case using Selenium WebDriver, Java and JUnit?

SOFTWARE TESTING EXERCISE 13: Search Engine (Dynamic Application)
Test Automation - Selenium WebDriver, Java + JUNIT Framework

Automate the following test case using Selenium WebDriver + Java + JUNIT annotations/assertions:
“Verify that when user selects ‘Price highest’ option – the product price is listed in the descending order”

Note: Refer Search Engine dynamic application below.

Software Testing Exercise 14 - Can you Prepare Cucumber BDD Steps Definition for this feature?

SOFTWARE TESTING EXERCISE 14: Search Engine (Dynamic Application)
Test Automation - Agile Testing - Cucumber BDD

Prepare Cucumber BDD Steps Definition (GWT) for Price highest Test Case
USER STORY-2:
As an Admin
I want to sort the products based on “Price”
so that I can easily and quickly find a product based on my needs.
BDD Scenario:
Scenario: Sorting
Given that I have X products in the search results
When I sort based on “Price Highest”
Then the products should be listed in price descending order

Note: Refer Search Engine dynamic application below.

TEST DATA has been defined by your buddy Test Engineer and has been deployed into test environment

Product Price
iPhone 4 £100
iPhone 4S £150
iPhone 5 £200
iPhone 5S £250
iPhone 6 £400
iPhone 6 Plus £600

Light Search Engine (Sorting) - Test Application

Search Results appear here ..


Sort