You are on page 1of 8

TSE2231: Software Engineering Lab 10

Fundamentals Lab 10: Designing Test Lab Objectives


1. Learn about different techniques for testing a software
2. Design unit test cases to verify the functionality and locate bugs, if any

Case Study: A Library Management System for MMU

MMU has recently been set up to provide state-of-the-art research facilities in


Computer Science. Apart from students and lecturers, it also includes many
employees who work on different projects undertaken by the university.

As the size and capacity of the university is increasing with the time, it has
been proposed to develop a Library Management System (LMS) for the
benefit of students and employees of the university. LMS will enable the
members to easily borrow a book (or return it) while sitting at his
desk/chamber. The system also enables a member to extend the date of his
borrowing if no other booking for that particular book has been made. For the
library staff, this system aids them to easily handling day-to-day book
transactions. The librarian, who has administrative privileges and complete
control over the system, can enter a new record into the system when a new
book has been purchased or remove a record if any book is taken off the
shelf. Any non-member is free to use this system to browse/search books
online. However, issuing or returning books is restricted to valid users
(members) of LMS only.

The final deliverable would be a web application (using the recent HTML 5),
which should run only within the university LAN. Although this reduces the
security risk of the software to a large extent, care should be taken that no
confidential information (e.g., passwords) is stored in plain text.

Design a Test case.


As the LMS development team, we regularly conduct performance tests for
their respective functions during the development cycle of the LMS system.
We did this to verify that the library management system (LMS) web
application was capable of helping students as we intended. In the following
Test Case, we will test each part of the LMS and explain our steps and test
results.

1. Test Case User Login Functionality


● Test Case ID: LMS-001

● Test Case Description:


To verify the user login functionality of the Library Management
System (LMS) web application, the following steps will be
performed.

Account id: IloveTSE


Account Password: TSE2231

● Test Procedure:
1. The LMS web application will be executed by our user and
our development team act as the user will navigate to the
login page.
2. A valid username and password will be entered by the
user(development team) for testing, and the user will click
on the "Login" button after entering their password. The
LMS system will be checked to ensure that the user is
redirected to the home page of the LMS. On the home
page, the presence of the user's name or identification will
be verified.
3. LMS will be confirmed that the user has access to the
borrowing and returning book features, but they are being
restricted from accessing admin privileges such as deleting
records of borrowing books.
4. When the user logs out from the LMS, it will be confirmed
that the user is redirected back to the login page.
5. Record and Observe the result

● Expected Result :
○ Successful launch of the LMS web application.
○ Correct display of the login page.
○ Ability to enter valid login credentials without encountering
errors.
○ Successful redirection to the home page after login.
○ Display the user's name or identification on the home page.
○ Availability of the borrowing and returning book features
(restricted from administrative privileges).

● Test Case Status: ( Pass / Fail )

2. Test Case User Logout Functionality


● Test Case ID: LMS-002

● Test Case Description:


Verify that users are correctly logged out of the system and sent
to the login page.

● Test procedure:
1. Execute the LMS.
2. Go to the login page by clicking.
3. Type in accurate credentials.
4. Select "Login" from the menu.
5. Execute a logout action, such as clicking the logout button.
6. Check to see if the user is taken to the login page.
7. Observe and Record the result.

● Expected results:
○ After logging out following the normal login flow, the user
should be redirected to the login page.
○ But the user may be redirected to an unknown page or
stuck in the profile and then logged out fail.
○ The page remains on the previous page, without any
response, or any clickable buttons.

● Test Case Status: ( Pass / Fail )


3. Test Case Book Borrowing
● Test Case ID: LMS-003

● Test Case Description:


This test case verifies the functionality of borrowing a book in the
Library Management System (LMS).

● Test procedure:
1. Search and select a book from the library catalog.
2. Verify that the book is available for borrowing.
3. Click on the "Borrow" button associated with the book.
4. Verify that the book is successfully borrowed by the
member.
5. Check the member's borrowing history or dashboard to
ensure the borrowed book is listed.

● Expected results:
○ The member should be able to borrow a book if it is
available.
○ The system should update the book's availability status and
the member's borrowing history.

● Test Case Status: ( Pass / Fail )

4. Test Case Book Return


● Test Case ID: LMS-004

● Test Case Description:


This test case verifies the functionality of returning a borrowed
book in the Library Management System (LMS).

● Test procedure:
1. Access the member's borrowing history or dashboard.
2. Locate the borrowed book that needs to be returned.
3. Click on the "Return" button associated with the book.
4. Verify that the book is successfully returned.
5. Check the book's availability status and the member's
borrowing history to ensure the book is marked as returned.

● Expected results:
○ The member should be able to return a borrowed book.
○ The system should update the book's availability status and
the member's borrowing history accordingly.

● Test Case Status: ( Pass / Fail )

5. Test Case Extending Borrow Date


● Test Case ID: LMS-005

● Test Case Description:


This test case verifies the functionality of extending the date of
member‘s borrowing if no other booking for that particular book
has been made in the Library Management System (LMS)..

● Test procedure:
1. Access the member's borrowing history or dashboard.
2. Locate the borrowed book that needs to be extended.
3. Click on the "Extend" button associated with the book.
4. Verify that the book is successfully extended, and the new
due date is updated.
5. Check the member's borrowing history to ensure the book's
due date is extended.

● Expected results:
○ The member should be able to extend a borrowed book if it
is eligible for extended.
○ The system should update the book's due date in the
member's borrowing history.

● Test Case Status: ( Pass / Fail )


6. Test Case Search Book (Security)
● Test Case ID: LMS-006

● Test Case Description:


This function enables the users to get the information of books.
The books’ ISBN, title, and brief introduction will be displayed on
the searching result container.

● Test procedure:
1. Users enter the keyword of the target book into the search
bar.
2. LMS filters the search key to prevent any invalid input that
may threaten the database. As an example, it may prevent
the user input “ ; ” or any sql commands to affect the
database from the query command.
3. LMS sends the validated search key to select the book title
which contains the search key then returns the books
targeted to display to users.
4. If LMS has not found any book which contains the search
key, it returns a “No such book directory” message to the
users.

● Expected results:
○ The user may be able to type in the book title to search and
get the corresponding book information.
○ The LMS should always connect with the database to
prevent the delay of searching.
○ The system should not enable any anomaly input and
system command from member and non-member users.

● Test Case Status: ( Pass / Fail )

7. Test Case Server Affordability (Security)


● Test Case ID: LMS-007

● Test Case Description:


The LMS is served for the whole MMU, and therefore It is
required to test having a strong server to support the large
amount of data transfer and computing power.
● Test procedure:
1. Prepare at least 100 devices or students to access to LMS
at the same time.
2. 40% of the participants perform actions such as searching
for a book, borrowing a book, and returning a book to
transform the data.
3. 40% of the participants keep browsing any LMS books to
test if it is affordable to multiple access at the same time.
4. 10% of participants keep login and logout to detect any
login failure or delay when the system is down.
5. 10% of participants login into the LMS and just stay to
occupy user space to check will they be kicked out from
LMS.

● Expected results:
○ The LMS should not stop and reject the requests from
users.
○ The LMS should not limit the access and requests.
○ LMS should drop some idle users when system usage is
too high to prevent system down.

● Test Case Status: ( Pass / Fail )

8. Test Case Enter new book record


● Test Case ID: LMS-008

● Test Case Description:


This test case verifies the functionality of entering a new book
record in the Library Management System (LMS).

● Test procedure:
1. The librarian can access to the library database system.
2. The librarian can add a book record into the library system.
3. Then the LMS will show a message that the new book
record will submit to the database.
● Expected results:
○ The user can view the new book that has been added into
the system such as the book name,author of the book and
publisher or published year of the book.
○ The librarian can see the new book record that has been
updated in the database.

● Test Case Status: ( Pass / Fail )

9. Test Case delete book record


● Test Case ID: LMS-009

● Test Case Description:


This test case verifies the functionality of deleting a book record
in the Library Management System (LMS).

● Test procedure:
1. The librarian can access the library database system.
2. The librarian enter the book that exist in the system.
3. The librarian remove the book record from the system.
4. The librarian enters a book that is not in the system.

● Expected results:
○ The book had successfully removed from the system.
○ The user cannot view the book has been removed from the
system when they searched the book.

● Test Case Status: ( Pass / Fail )

You might also like