Stqa Mini Project Output
Stqa Mini Project Output
programming languages. Narrate a concise Test Plan consisting of features to be tested and bug taxonomy.
Narrate scripts in order to perform regression tests. Identify the bugs using Selenium WebDriver and IDE and
generate test reports encompassing exploratory testing.
● Problem Definition: The goal of this project is to create a Todo List Application that allows users to manage
tasks and organize them efficiently. The application will also support role-based access control (admin, user).
The project involves automating tests using Selenium WebDriver to ensure the correct functioning of user
authentication, task creation, task management, and filtering tasks.
● Prepared By:
● Prerequisite:
Knowledge of Python programming and Node.js, Basics of Selenium WebDriver and Selenium IDE
● Software Requirements:
○ Node.js
○ Python
○ MongoDB
○ Selenium Webdriver
○ VsCode
● Hardware Requirement:
○ Processor: Intel i5 or higher
○ RAM: 4 GB minimum
○ Internet Connection for web application deployment and testing
● Theory :
The Todo List Application is designed to help users manage tasks effectively, allowing them to create, edit,
delete, and filter tasks. The application also supports user authentication and role-based access, with admin
users being able to view other users’ progress. Automated testing will be performed using Selenium to ensure
the reliability of the system.
Testing Tool: Selenium
Selenium is a free (open-source) automated testing suite for web applications across different browsers
and platforms. It is quite similar to HP Quick Test Pro (QTP now UFT) only that Selenium focuses on
automating web-based applications. Testing done using the Selenium tool is usually referred as
Selenium Testing. Selenium is not just a single tool but a suite of software, each catering to different
testing needs of an organization. It has four components.
● Selenium Integrated Development Environment(IDE)
● Selenium Remote Control (RC)
● Web Driver
● Selenium Grid
Selenium IDE (Integrated Development Environment) is the simplest tool in the Selenium Suite. It is a
Firefox add-on that creates tests very quickly through its record- and-playback functionality. This feature
is similar to that of QTP. It is effortless to install and easy to learn. Because of its simplicity, Selenium
IDE should only be used as a prototyping tool, not an overall solution for developing and maintaining
complex test suites.
Though you will be able to use Selenium IDE without prior knowledge in programming, you should at
least be familiar with HTML, JavaScript, and the DOM (Document Object Model) to utilize this tool to its
full potential. Knowledge of JavaScript will be required when we get to the section about the Selenese
command "run Script."
Selenium IDE supports auto-complete mode when creating tests. This feature serves two purposes: It helps
the tester to enter commands more quickly.
It restricts the user from entering invalid commands.
The way to set up a Selenium 2.0 Java project is to use Maven. Maven will download the java bindings
(the Selenium 2.0 java client library) and all its dependencies, and will create the project for you, using a
maven pom.xml (project configuration) file. Once done, you can import the maven project into your
preferred IDE, IntelliJ IDEA or Eclipse.
Advantages of Selenium
i) It is an Open source Software.
ii) It supports various Operating environments (Windows, Linux, Mac etc…)
iii) It supports various browsers (IE, Mozilla Firefox, Chrome, safari, Opera etc…)
iv) It supports various programming environments (Java, Perl, Python, Ruby and PHP)
v) It supports parallel Test execution.
vi) It uses less Hardware resources.
Disadvantages of Selenium
i) It supports Web based Applications only.
ii) No reliable support from anybody.
iii) No centralized maintenance of Elements/objects
iv) Difficult to setup environment.
v) Difficult to use.
vi) Limited support for Image based testing.
vii) New features may not work properly.
viii) No other tool integration for test management & No built in Reporting facility
● Test Plan
INTRODUCTION
The purpose of the test plan is to outline the approach, scope, and methodology of testing the Todo List
Application. The testing will focus on user authentication, task creation, and task filtering
functionalities. Testing will be automated using Selenium WebDriver, and test reports will be generated
for each test case.
1 TEST STRATEGY
1.1 Scope of Testing
● Features to be tested: User login, task creation, task management, task filtering, user logout.
● Features not to be tested: External API calls, and system performance.
1.1.1 Features to be tested
2 TEST OBJECTIVE
The test object in this project is the Todo List Application, designed to evaluate the core functionalities
of user authentication, task management, and role-based access control. The tests will verify if users can
securely sign up, log in, and manage their tasks, ensuring that all task-related actions, such as creating,
editing, deleting, and filtering tasks, work as expected. Additionally, the tests will confirm the correct
behavior of features like admin dashboards, task completion tracking, and role-specific access. By
validating these functionalities, the tests ensure the application meets both user expectations and system
requirements, promoting a seamless and secure user experience.
3 TEST CRITERIA
3.1 Suspension Criteria
If the team members report that there are 40% of test cases failed, suspend testing until
the development team fixes all the failed cases.
● Test Report for Test Cases inclusive of Test Procedures for identified Test Scenarios.
Sr. No. Test Case Steps Expected Result Actual Status
Description Result
TC3 Check page Load the admin Page title should PASSED PASSED
title (Admin) dashboard page. match the
expected value.
TC6 Check page Load the user Page title should PASSED PASSED
title (User) dashboard page. match the
expected value.
TC9 Task 'Task 1' Add "Task 1" Task "Task 1" PASSED PASSED
added using the task should be
form. successfully added
to the task list.
TC10 Task 'Task 2' Add "Task 2" Task "Task 2" PASSED PASSED
added using the task should be
form. successfully added
to the task list.
TC11 Task 'Task 3' Add "Task 3" Task "Task 3" PASSED PASSED
added using the task should be
form. successfully added
to the task list.
TC15 Filter active Use the filter to Only active tasks PASSED PASSED
tasks display only should be visible.
active tasks.
TC16 Filter all tasks Display all tasks; "Task 1" should be PASSED PASSED
— 'Task 1' "Task 1" should present in the list.
be visible.
TC17 Filter all tasks Display all tasks; "Task 2" should be PASSED PASSED
— 'Task 2' "Task 2" should present in the list.
be visible.
TC18 Filter all tasks Display all tasks; "Task 3" should be PASSED PASSED
— 'Task 3' "Task 3" should present in the list.
be visible.
TC22 Verify form Check for the Username and PASSED PASSED
fields presence of password fields
(username/pas username and should be present
sword) password fields in and visible.
presence the login form.
TC25 Verify text of Check the text of Text of the first PASSED PASSED
the first the first navigation link
navigation navigation link. should match the
link expected value.
TC26 Verify text of Check the text of Text of the second PASSED PASSED
the second the second navigation link
navigation navigation link. should match the
link expected value.
TC27 Verify header Check the main Header text should PASSED PASSED
text header text match the
displayed on the expected value.
page.
TC29 Verify list Count the number The number of list PASSED PASSED
items count of list items items should
displayed on the match the
page. expected count.
TC30 Verify text of Check the text of Text of the first PASSED PASSED
list item 1 the first list item. list item should
match the
expected value.
TC31 Verify text of Check the text of Text of the second PASSED PASSED
list item 2 the second list list item should
item. match the
expected value.
TC32 Verify text of Check the text of Text of the third PASSED PASSED
list item 3 the third list item. list item should
match the
expected value.
TC33 Verify footer Check the footer Footer text should PASSED PASSED
text text displayed at match the
the bottom of the expected value.
page.
TC34 Check signup Load the signup Page title should PASSED PASSED
page title page. contain "Signup".
TC35 Check signup Load the signup Signup form PASSED PASSED
form presence page and check should be present
for the presence and visible.
of the signup
form.
TC36 Verify form Check for the All fields should PASSED PASSED
fields presence of be present and
presence username, visible.
(username, password, and
password, confirm password
confirm fields in the
password) signup form.
TC40 Test signup Submit signup An alert with the PASSED PASSED
with missing form with valid message
username passwords but "Username is
leave the required" should
username field be shown.
empty.
TC41 Test signup Submit signup An alert with the PASSED PASSED
with missing form with a valid message
password username but "Password is
leave the required" should
password field be shown.
empty.
TC42 Test signup Submit signup An alert with the PASSED PASSED
with missing form with a valid message "Confirm
confirm username and password is
password password but required" should
leave the confirm be shown.
password field
empty.
TC43 Test signup Submit signup An alert with the PASSED PASSED
with form with a valid message
mismatched username but with "Passwords do not
passwords non-matching match" should be
passwords in the shown.
password and
confirm password
fields.
TC44 Check login Load the login Page title should PASSED PASSED
page title page. contain "Login".
SCREENSHOTS - (User Interface & Testing Output results)