70
- 1 -

HotelFrozenGalaxyReservation System Testing

Embed Size (px)

Citation preview

Page 1: HotelFrozenGalaxyReservation System Testing

- 1 -

Page 2: HotelFrozenGalaxyReservation System Testing

PROJECT REPORT ON

HOTEL GALAXY RESERVATION SYSTEM - TESTING

Submitted in partial fulfillment for the award of certificate in

Diploma in Software Testing and Quality Assurance

(DSTQA)

From

NIIT

By

- 2 -

Page 3: HotelFrozenGalaxyReservation System Testing

FATHIMA HAFEEZ Registration number:

Batch Code :

Start Date : 28 Feb 2011 End Date : 12 May 2012

Name of the Coordinator : Ms.Rosy

Name of the Tester : FATHIMA HAFEEZ

Date of Submission :

- 3 -

Page 4: HotelFrozenGalaxyReservation System Testing

NIIT

- 4 -

Page 5: HotelFrozenGalaxyReservation System Testing

CERTIFICATE

This is to certify that this report, titled Hotel Frozen Galaxy reservation system testing,

represents the original work done by FATHIMA HAFEEZ in partial fulfillment of his

course requirement at NIIT.

Coordinator :

ACKNOWLEDGEMENT

First of all I would like to Thank Mr. Mahesh of NIIT BTM, who guided us from

the start of the testing course to till its completion and supported us till we complete the

- 5 -

Page 6: HotelFrozenGalaxyReservation System Testing

course. He was our problem solver through our course and without his support we could

not have complete the course till its completion.

I would like to thank all the members, staff, Faculties of NIIT BTM layout

Center, Bangalore, for their kind co operation during my tenure with them as their

student. They taught all they knew and cleared all my silly doubts with utmost care and

tenderness. It is that learning follows in my project.

Next I would like to thank all co students at the NIIT BTM Layout centre that

extended their help whenever I was in need of one.

The Guidance provided by Ms Rosy, in spite of her busy schedule at her office

was invaluable and the Ideas she provided are very crux of the project we are at.

.

FATHIMA HAFEEZ

- 6 -

Page 7: HotelFrozenGalaxyReservation System Testing

CONTENTS

1. Introduction 7

2. Objectives 8

3. Test Plan Introduction 9

Purpose

Background

Scope. 10

4. Test Plan - features to be tested. (Functional testing) 11

5. Test Plan - Test Strategy 12

6. Test Plan - Resources Required. 13

7. Test Plan - Project Miles Stones. 14

8. Test Script Details / Test Cases. 15

9. Test execution screens 34

10. Test Reports 47

11. Defect Report 48

12. Performance test reports 49

1 . INTRODUCTION

- 7 -

Page 8: HotelFrozenGalaxyReservation System Testing

Frozen Galaxy Hotel started its operations in California in the year 2001. The Hotel has a

reputation for taking good care of its customers. It keeps introducing innovative ideas and

policies to enhance its customer base and retain existing customers. The hotel’s excellent

services and amenities have resulted in a 50% increase in the annual revenues. To handle

the increased volume of transactions, the management has approached the Global

software solutions provider Ltd, to develop a website for Hotel.

The designed website needs to facilitate hotel staff and customer:

Management of Rooms to facilitate adding and Deleting rooms

Management Customers reservations of Rooms to Facilitate Booking of rooms or

canceling the Room so booked.

Management of Miscellaneous operating departments.

Design of the Developed System :

The system developed by the software provider has the following two interfaces:

1. Administrator Interface (For the use of the Hotel staff)

2. Customer Interface (For the use of online customer)

The administrator interface provides the following facilities.

Manage Rooms: It allows manage the rooms that are available in the

hotel. It includes two functions

1. Creating new room details.

2. Canceling room bookings.

Manage announcements: This facility will allow hotel staff to

manage the announcements that are required to be displayed to the

customer while they are booking a room in the hotel.

- 8 -

Page 9: HotelFrozenGalaxyReservation System Testing

The following figure shows the hotel staff interface.

The interface for the hotel customer provides the following facilities:

Book Rooms: This facility will allow a customer to book a room.

View Details: This facility will allow a customer to view the vacant rooms. It will

also allow a customer to view the various announcements made by the Hotel.

The following figure shows the customer interface.

OBJECTIVES

As a part of the software testing team, we need to test the hotel’s newly developed

system. The testing will have the following four phases.

1. Creating test plan

2. Create test cases

3. Executing tests

- 9 -

Page 10: HotelFrozenGalaxyReservation System Testing

4. Reporting defects.

Test Plan

Purpose

The newly developed web based Reservation system for the hotel needs

to be tested for all the various functions that it aims to provide. The functional testing for

the system is conducted to identify any defect that may be there hidden in the system.

Since multiple users log in to the system to access the information needed along with the

functional testing we have to do the performance testing as well.

Background:

Before the system was developed the Hotel staff used the manual records for the

information and customers had to call hotel staff to inquire the room’s availability and

book the rooms for the dates required. But as the business has grown many folds, it is not

possible to handle the entire information manually. Thus a new web based system had to

be developed with both Hotel staff and customer on mind.

- 10 -

Page 11: HotelFrozenGalaxyReservation System Testing

The system will have to give provide the following features or functions to

Customers.

1. Login and logout features for security reasons.

2. Should be able to check rooms availability

3. Should be able to view announcements by the hotel.

4. Should be able to book Rooms online.

The system will have to give the following functions to Hotel staffs.

1. Login and logout features for security reasons.

2. Manage rooms

3. Add new rooms.

4. Cancel the room reservations

5. Should be able to make announcements to customers

6. Inquire room availability status.

All the above functions have to be tested with customer view and also from staffs view in

mind. This will be covered in functional testing of the system. As multiple customers

and hotel staff may access the system at the same time we have to conduct performance

testing to see the maximum traffic that the system tolerates and System Works with out

any problem.

Scope of Testing

The Scope of this testing is limited only to the functionalities that the system provides and

does not cover the various functional enhancements that can be made to the system. Also

the tester assumes that the system developed is as per customer’s requirement.

- 11 -

Page 12: HotelFrozenGalaxyReservation System Testing

The functional and performance testing is conducted on the same machines with same

hardware configuration that are normally available in the market places as we assume that

the customer uses the same type of hardware. The details of the Hardware specification

will be given in the resources required to complete the testing list.

Even though various other type of testing can be conducted the scope of this testing is

limited to Functional testing and performance testing. User acceptance testing is out of

scope of this testing.

Functional Testing

Following are the features tested in the application under testing for both

Admin (Hotel Staff and System administrator) and customer (Hotel customer). Two users

with the name and password “Admin” and “Customer” are created for the purpose of

testing which will be deleted later once the testing is complete.

1. Login functionality

2. Reservation functionality

3. Vacant room reports on any give day.

4. Room availability on a particular date.

5. View announcements.

6. Log out functionality.

7. Booking Cancellation functionality.

As the functions to be tested is less we are going to write manual test script for

each function and do manual testing. Record defects found during the testing and produce

them in the form of Defect reports.

Performance Testing:

- 12 -

Page 13: HotelFrozenGalaxyReservation System Testing

The system under testing is an online hotel reservation system and many online users and

the hotel staff will be accessing the system at the same time. This necessitates according

to the service level agreements with the client to do performance testing to give

performance guarantee according to the user specifications. The system will be tested by

doing work load analysis. Three types of performance test we are going to do are

Load testing,

Volume testing and

Stress testing

To ensure how the system behaves and what are the improvements needed if any as per

the performance report.

Test Strategy

The system under testing will be tested first for the functionality that it is going to

provide. Test cases are written manually and the scripts are going to guide the testers to

test the function separately. Manager oversees the complete testing project. He

coordinates with the client, internal teams and his own team to get resources as required.

The manager uses the IBM rational test manager to manage his test project. He is the

person responsible for coordinating with Developers and will be assisted by Test

designers.

The manager will be assisted by 2 test designers to evaluate the

Client’s requirements, design test cases, gather assemble test requirements, coordinates

with testers for getting the systems tested. They also analyze the test reports and defect

reports. They provide recommendation to the client and developers as per the out come of

- 13 -

Page 14: HotelFrozenGalaxyReservation System Testing

the test results. The designers use IBM rational test manager and manual tester for this

purpose.

The designers will do two type of testing, first functional testing to

verify the functional requirement of the client. Second they do the performance testing on

various type of system using IBM rational performance tester.

Five independent testers will test the functions as per the test script

designed by the test designers on various types of systems as assigned by the test

designers. They open the defect report or change request as and when they do the testing

and forward them to designers for the review. Designers will take care of the reports and

forward them to the developers after they discuss that with the Manager.

Following resources are required for the system testing.

Human Resources for Testing

Five testers, 2 test designers and a test manager is required for the following purposes.

Testers are going to test the functions in the system independently and give defect reports

once the testing is completed. They use the test cases designed by the test designers and

we require 2 test designers to design the testing and analyze the testing reports and defect

reports. Test manager provides technical direction and coordinate with various other

teams to get resources. He is responsible for the success of the testing efforts.

The following table shows the Head count requirement for testing.

Worker Minimum

Resources Required

Responsibilities

Test Manager 1 Provide technical direction.

- 14 -

Page 15: HotelFrozenGalaxyReservation System Testing

Acquire appropriate resources.

Coordinate with Developers

Test

Designer2

Design and generate Test cases

Evaluate Defect reports and work with

Developers and Managers.

Evaluate effectiveness of test effort.

Tester 5

Execute test scripts

Log results.

Document and forward defects to Test

designers.

System resources for testing

8 systems with following minimum Hardware configuration

Systems with Intel Pentium processor, 1024 MB RAM, Color Display

Monitor, Windows XP operating system with Internet explorer Browser.

IBM Rational performance tester, required to conduct the performance testing.

IBM Rational manual tester, require to write the scripts to manual testers to conduct the

functional testing.

IBM Rational Test manager, IBM Rational Robot and Complete IBM Testing Suites

required for creating automated scripts for performance testing.

Hotel Galaxy reservation system up and running which is the system to be tested.

Project Milestones

The following time table shows the total time required for the testing project along with

the major milestones.

- 15 -

Page 16: HotelFrozenGalaxyReservation System Testing

Task Effort Start date End date

Test Planning 1 week 05/02/2011 05/08/2011

Test Design 1 week 05/09/2011 05/15/2011

Test Development 1 Week 05/16/2011 05/22/2011

Test Execution 3 days 05/23/2011 05/26/2011

Test Evaluation

Test Documentation

3 days 05/27/2011 05/31/2011

Ideally the project should start on May 1st and End on May 31.

Test Cases

The Scripts are written for the each of the following test cases and are

attached as a separate file for each of the following test cases. Some of the test cases

written are attached in the table below for just reference.

1. Login functionality

2. Reservation functionality

3. Vacant room reports on any give day.

4. Room availability on a particular date.

5. View announcements.

6. Log out functionality.

7. Booking Cancellation functionality

Test Scenarios _ Test cases Table.

SL No Test Scenario Test

case ID

Condition Descripti

on

Table Test

date

Action Exp.

Result

- 16 -

Page 17: HotelFrozenGalaxyReservation System Testing

1 HG_Login_usename HG001 Alphanumeric no

special # in

Username

Try special # in

user name

05/11 Enter

special #

in

username

And click

submit

button

Fail

2. HG_Login_usename HG002 Alphanumeric no

special # in

Username

Try only

alphabets in

username

05/11 Enter

username

with only

Alphabets

Fail

3 HG_Login_usename HG003 Alphanumeric no

special # in

Username

Try only

numerals in

username

05/11 Enter

username

with only

numerals

Fail

4 HG_Login_usename HG004 Alphanumeric no

special # in

Username

Try username

with Alphabets

and numerals

05/11 Enter a

username

That has

both

Alphabets

and

numerals

Pass

5 HG_Login_usename HG005 Alphanumeric no

special # in

Username

Keep username

blank

05/11 Keep user

name

blank

Fail

6 HG_Login_Password HG006 Alphanumeric no

special # in

Password

Keep password

Blank

05/11 Keep

password

blank

Fail

7 HG_Login_Password HG007 Alphanumeric no

special # in

Password

Try special # in

password

05/11 Use

special #

in

password

field

Fail

8 HG_Login_Password HG008 Alphanumeric no

special # in

Password

Try only

alphabets

05/11 User to

enter only

alphabets

Fail

9 HG_Login_Password HG009 Alphanumeric no

special # in

Try numerals 05/11 User to

enter only

Fail

- 17 -

Page 18: HotelFrozenGalaxyReservation System Testing

Password numerals

in

password

In the similar manner we have designed test cases for all the modules in the reservation

system. Some of the screen shots of the test failures and passes are given below.

- 18 -

Page 19: HotelFrozenGalaxyReservation System Testing

- 19 -

Page 20: HotelFrozenGalaxyReservation System Testing

- 20 -

Page 21: HotelFrozenGalaxyReservation System Testing

Test Scripts

Login

Click on the start Button and Select Internet explorer Browser

Type “http://localhost:1197/HotelFrozenGalaxyReservation/login.aspx ”

- 21 -

Page 22: HotelFrozenGalaxyReservation System Testing

Hit Enter or refresh button.

Verify if the folowing Screen Appears.

Enter the user name “admin” and password “admin” and click on the Login submit

button.

Verify if the following Screen appears.

- 22 -

Page 23: HotelFrozenGalaxyReservation System Testing

Now we are in the home page of the website.

<%@page contentType="text/html"%>

<%@page pageEncoding="UTF-8"%>

<%@page import="java.util.*"%>

<%@page import="java.util.GregorianCalendar.*"%>

<%@page import="java.lang.*"%>

<%@page import="java.sql.*"%>

<%@page import="GalaxyHotelReservation.ConnectToDatabase"%>

<%--

The taglib directive below imports the JSTL library. If you uncomment it,

you must also add the JSTL library to the project. The Add Library... action

on Libraries node in Projects view can be used to add the JSTL 1.1 library.

--%>

<%--

<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

--%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<LINK media="screen" href="DatePicker_Sheet.css" type="text/css"

rel="StyleSheet">

- 23 -

Page 24: HotelFrozenGalaxyReservation System Testing

<SCRIPT language="JavaScript" src="DatePicker.js">

</SCRIPT>

<title>Vacant Room Reports</title>

<%

java.util.Date FromDate=null;

java.util.Date ToDate=null;

java.sql.Date tDate=null;

java.sql.Date SearchDate=null;

Connection con=null;

int i=0;

java.text.SimpleDateFormat d;

Calendar clnKFrom,clnKTo;

%>

<script>

var mode;

var fromDate,toDate;

function MenuItemClick(RoomNo,FromDate,ToDate)

{

frmRoom.action='Reservation.jsp?

RoomNo='+RoomNo+'&FromDate='+FromDate+'&ToDate='+ToDate;

//alert(frmRoom.action);

frmRoom.submit();

}

- 24 -

Page 25: HotelFrozenGalaxyReservation System Testing

function ShowStatus()

{

if(frmRoom.txtdatefrom.value.length==0 ||

frmRoom.txtdateto.value.length==0)

alert("From Date or To Date Can Not Be Empty");

else

{

fromDate=frmRoom.txtdatefrom.value;

toDate=frmRoom.txtdateto.value;

if (new Date(fromDate) > new Date (toDate))

{alert("From Date Can Not Be Greater Than To Date");return 0;}

frmRoom.action='AdminVacantRoomReport.jsp?

TypeOfRoom='+frmRoom.RoomType.value+'&FromDate='+fromDate+'&ToDate='+toD

ate;

//alert(frmRoom.action);

frmRoom.submit();

}

}

</script>

</head>

<body bgcolor=LightYellow>

<hr>

- 25 -

Page 26: HotelFrozenGalaxyReservation System Testing

<form name="frmRoom" method="post">

<h2><u>Vacant Room Reports</u></h2>

<br>

<table border="0">

<tr>

<td>Type:</td>

<td><select id="RoomType" name="RoomType"

width="10">

<option value="Economic"

selected>Economic</option>

<option

value="Executive">Executive</option>

<option

value="Presidential">Presidential</option>

</select></td>

</tr>

<tr>

<td>From Date:</td>

<td><input id="txtdatefrom" style="WIDTH: 93px"

readOnly type="text" maxLength="12" name="txtdatefrom"

size="10">

<img name="CmdShowStart" onclick="displayDatePicker('txtdatefrom',

this,'mdy','/');" src="cal.jpg">

</td>

</tr>

<tr>

- 26 -

Page 27: HotelFrozenGalaxyReservation System Testing

<td>To Date:</td>

<td><input id="txtdateto" style="WIDTH: 93px"

readOnly type="text" maxLength="12" name="txtdateto">

<img name="CmdShowStart"

onclick="displayDatePicker('txtdateto', this,'mdy','/');" src="cal.jpg">

</td>

</tr>

</table>

<P>

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <input name="btnNewRoom"

type="button" value="Show Status" onclick="ShowStatus();">

<hr>

<%

int rn = 0;

String RType = request.getParameter("TypeOfRoom");

if (request.getParameter("FromDate")!=null)

{

d = new java.text.SimpleDateFormat("mm/dd/yyyy");

FromDate=d.parse(request.getParameter("FromDate").toString());

ToDate=d.parse(request.getParameter("ToDate").toString());

//out.print("From Date is " + request.getParameter("FromDate").toString());

//out.print("To Date is " + request.getParameter("ToDate").toString());

- 27 -

Page 28: HotelFrozenGalaxyReservation System Testing

clnKFrom=Calendar.getInstance(Locale.US);

clnKTo=Calendar.getInstance(Locale.US);

//out.print("month is "+clnKFrom.get(Calendar.MONTH));

%>

<script>

frmRoom.RoomType.value="<%=RType%>";

frmRoom.txtdatefrom.value='<

%=request.getParameter("FromDate").toString()%>';

frmRoom.txtdateto.value='<

%=request.getParameter("ToDate").toString()%>';

//frmRoom.idays.selectedIndex=<

%=(Integer.parseInt(request.getParameter("FromDate").toString().substring(3,5))-1)%>;

//frmRoom.odays.selectedIndex=<

%=(Integer.parseInt(request.getParameter("ToDate").toString().substring(3,5))-1)%>;

//frmRoom.imonths.selectedIndex=<

%=(Integer.parseInt(request.getParameter("FromDate").toString().substring(0,2))-1)%>;

//frmRoom.omonths.selectedIndex=<

%=(Integer.parseInt(request.getParameter("ToDate").toString().substring(0,2))-1)%>;

</script>

<%%>

<%

- 28 -

Page 29: HotelFrozenGalaxyReservation System Testing

if(!

(request.getParameter("FromDate").toString().substring(0,2).equalsIgnoreCase(request.ge

tParameter("ToDate").toString().substring(0,2))))

{

out.write("This is month based report. Please select the dates from the same

month.");

}

else{

try{

if (clnKFrom.get(Calendar.YEAR)!=1)

{

//String SqlStmt = "Select * from RoomMaster where Type='" + RType + "' and

(('" + clnKFrom.get(Calendar.MONTH) + "/" + clnKFrom.get(Calendar.DATE) + "/" +

clnKFrom.get(Calendar.YEAR) + "'>CheckOutDate or '" +

clnKTo.get(Calendar.MONTH) + "/" + clnKTo.get(Calendar.DATE) + "/" +

clnKTo.get(Calendar.YEAR) + "'<CheckInDate) or (checkInDate is null and

checkOutDate is null))";

//String SqlStmt = "Select * from RoomMaster where Type='" + RType + "' and

(('" + request.getParameter("FromDate").toString() + "'>CheckOutDate or '" +

request.getParameter("ToDate").toString();

//out.write(SqlStmt);

//String SqlStmt="Select * from RoomMaster where Type='" + RType+"'";

- 29 -

Page 30: HotelFrozenGalaxyReservation System Testing

//String SqlStmt="Select * from RoomMaster where Type='" + RType + "' and

(('" + request.getParameter("FromDate").toString() + "'>CheckOutDate or '" +

request.getParameter("ToDate").toString()+"'<CheckInDate) or (checkInDate is null and

checkOutDate is null))";

//String SqlStmt="select * from RoomMaster where Type='" + RType + "' and

RoomNo Not In(select RoomNo from reservation where Status is null and ('" +

request.getParameter("FromDate").toString() + "' between CheckInDate and

CheckOutDate or '" + request.getParameter("FromDate").toString() + "' between

CheckInDate and CheckOutDate))";

//String stmt="sdfsdfs<CheckInDate) or (checkInDate is><";

//out.write(SqlStmt);

//out.write("\nTotal Rows Are " + RoomsAll.getRow());

//if (RoomsAll.getRow()!=0)

//java.sql.Date

fDate=java.sql.Date.valueOf(request.getParameter("FromDate").toString());

//tDate=java.sql.Date.valueOf(request.getParameter("ToDate").toString());

//SearchDate=java.sql.Date.valueOf(request.getParameter("FromDate").toString());

%>

<P></P>

<table width="400">

<tr>

<th width="20">

Date</th><th width="50"><nobr>No Of

Vacant Room(s)<nobr></th></tr>

- 30 -

Page 31: HotelFrozenGalaxyReservation System Testing

<%

con=ConnectToDatabase.getJDBCConnection();

int j=ToDate.compareTo(FromDate);

clnKFrom.setTime(FromDate);

clnKTo.setTime(ToDate);

int fd=clnKFrom.get(Calendar.DAY_OF_MONTH);

int td=clnKTo.get(Calendar.DAY_OF_MONTH);

while(fd<=td)

{

clnKFrom.setTime(FromDate);

//out.write("Month is "+clnKFrom.get(Calendar.MONTH));

//String SqlStmt="select Count(RoomNo) as NoOfVacantRooms from

RoomMaster where type='"+RType+"' and RoomNo Not In(select RoomNo from

reservation where Status is null and

('"+Integer.parseInt(request.getParameter("FromDate").toString().substring(0,2))

+"/"+fd+"/"+clnKFrom.get(Calendar.YEAR)+"' between (checkInDate) and

(CheckOutDate)))";

String SqlStmt="select Count(RoomNo) as NoOfVacantRooms from

RoomMaster where type='"+RType+"' and RoomNo Not In(select RoomNo from

reservation where Status is null and

(('"+Integer.parseInt(request.getParameter("FromDate").toString().substring(0,2))

+"/"+fd+"/"+clnKFrom.get(Calendar.YEAR)+"'>=checkInDate) and

- 31 -

Page 32: HotelFrozenGalaxyReservation System Testing

('"+Integer.parseInt(request.getParameter("FromDate").toString().substring(0,2))

+"/"+fd+"/"+clnKFrom.get(Calendar.YEAR)+"'<=dateadd(Day,-1,CheckOutDate))))";

//String SqlStmt="select Count(RoomNo) as NoOfVacantRooms from

RoomMaster where type='"+RType+"' and RoomNo Not In(select RoomNo from

reservation where Status is null and

(('"+Integer.parseInt(request.getParameter("FromDate").toString().substring(0,2))

+"/"+fd+"/"+clnKFrom.get(Calendar.YEAR)+"' > checkInDate) and

('"+Integer.parseInt(request.getParameter("FromDate").toString().substring(0,2))

+"/"+fd+"/"+clnKFrom.get(Calendar.YEAR)+"'<=dateadd(Day,-1,CheckOutDate)))";

//String SqlStmt="select Count(RoomNo) as NoOfVacantRooms from

RoomMaster where type='"+RType+"' and RoomNo Not In(select RoomNo from

reservation where Status is null and ('"+clnKFrom.get(Calendar.MONTH)

+"/"+clnKFrom.get(Calendar.DAY_OF_MONTH)+"/"+clnKFrom.get(Calendar.YEAR)

+"' between (checkInDate) and (CheckOutDate)))";

//String SqlStmt="select Count(RoomNo) as NoOfVacantRooms from

RoomMaster where type='"+RType+"' and RoomNo Not In(select RoomNo from

reservation where Status is null and

('"+clnKFrom.MONTH+"/"+clnKFrom.DAY_OF_MONTH+"/"+clnKFrom.YEAR+"'

between (checkInDate) and (CheckOutDate)))";

//String SqlStmt="select Count(RoomNo) as NoOfVacantRooms from

RoomMaster where type='"+RType+"' and RoomNo Not In(select RoomNo from

reservation where Status is null and

('"+clnKFrom.MONTH+"/"+clnKFrom.DAY_OF_MONTH+"/"+clnKFrom.YEAR+"'

between (checkInDate) and (CheckOutDate)))";

//out.write(SqlStmt);

Statement stmt=con.createStatement();

- 32 -

Page 33: HotelFrozenGalaxyReservation System Testing

ResultSet RoomsAll = stmt.executeQuery(SqlStmt);

//{%>

<%

//int i = 0;

//Date CheckInDate,CheckOutDate;

i=0;

while(RoomsAll.next())

{

//rn = Integer.parseInt(RoomsAll.getString("RoomNo"));

//CheckInDate = RoomsAll.getString("CheckInDate");

//CheckOutDate = RoomsAll.getString("CheckOutDate"); %>

<tr>

<td width="50"><

%=Integer.parseInt(request.getParameter("FromDate").toString().substring(0,2))

+"/"+fd+"/"+clnKFrom.get(Calendar.YEAR)%></td>

<td width="50"><

%=RoomsAll.getString("NoOfVacantRooms")%></td>

</tr>

<%

i++;

}

fd++;

//FromDate=DateAdd(FromDate);

- 33 -

Page 34: HotelFrozenGalaxyReservation System Testing

}

%>

</table>

<hr>

<b>

<%

%></b>

<% //}

}

}

catch(SQLException ex){System.out.println("\n SQL Exception during

validation"+ex.toString());}

}

%>

<%}%>

<%!

public java.util.Date DateAdd(java.util.Date av)

{

long t = av.getTime();

t -= 1 * 24 * 60 * 60 * 1000;

java.util.Date then = new java.util.Date(t);

return(then);

- 34 -

Page 35: HotelFrozenGalaxyReservation System Testing

}

%>

</form>

</body>

</html>

Test Execution

The test cases are executed with the help of testers and some of the screen shots of the

various test cases are captured below. Only test cases with Fail as the expected results are

captured as the ones with Pass are already displayed in the previous section.

The above test is for blank pass word for login which failed as expected.

- 35 -

Page 36: HotelFrozenGalaxyReservation System Testing

The above screen shot is for keeping date field blank for room reservation status. Fails as expected and gives error message.

Confirmation screen before logout appears as expected. Test case passes.

- 36 -

Page 37: HotelFrozenGalaxyReservation System Testing

RESERVATIONLogin to the system as given below Login Click on the start Button and Select Internet explorer Browser Type “ http://localhost:1197/HotelFrozenGalaxyReservation/login.aspx ” Hit Enter or refresh button.Verify if the folowing Screen Appears.Enter the user name “admin” and password “admin” and click on the Login submit button.Verify if the following Screen appears.

Now we are in the home page of the website.Click on the Reservation tab.Verify if the following screen appears.

Select type as Economic Enter 05/11/2011 in the From date fieldEnter 05/15/2011 in the To date fieldClick on “Show staClick on View tab and select Vacant RoomVerify if the following screen appears<%@page contentType="text/html"%><%@page pageEncoding="UTF-8"%><%@page import="java.util.*"%><%@page import="java.lang.*"%><%@page import="java.sql.*"%><%@page import="GalaxyHotelReservation.ConnectToDatabase"%><%@page import="GalaxyHotelReservation.GalaxyWebServiceImpl"%><%--The taglib directive below imports the JSTL library. If you uncomment it,you must also add the JSTL library to the project. The Add Library... actionon Libraries node in Projects view can be used to add the JSTL 1.1 library.--%><%--

- 37 -

Page 38: HotelFrozenGalaxyReservation System Testing

<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> --%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>JSP Page</title> <% int RoomNo=0; float Advance=0; String showMsg = null; Calendar clnCheckIn=null,clnCheckOut=null; //String CheckInDate=null,CheckOutDate=null; String strCheckInDate=null; java.util.Date CheckInDate=null; java.util.Date CheckOutDate=null; if(request.getParameter("RoomNo")!=null) RoomNo = Integer.parseInt(request.getParameter("RoomNo")); java.text.SimpleDateFormat d = new java.text.SimpleDateFormat("mm/dd/yyyy"); if(request.getParameter("FromDate")!=null) { strCheckInDate=request.getParameter("FromDate").toString(); strCheckInDate=strCheckInDate.replaceAll("/",""); CheckInDate = d.parse(request.getParameter("FromDate").toString()); //out.print("check in date is "+request.getParameter("FromDate").toString()); } if(request.getParameter("ToDate")!=null) { CheckOutDate = d.parse(request.getParameter("ToDate").toString()); //out.print("check out date is "+request.getParameter("ToDate").toString()); } String tokenNo = null; if(request.getParameter("txtTokenNo")!=null) tokenNo = request.getParameter("txtTokenNo"); clnCheckIn=Calendar.getInstance(Locale.US); clnCheckOut=Calendar.getInstance(Locale.US); if(CheckInDate!=null) clnCheckIn.setTime(CheckInDate); if(CheckOutDate!=null) clnCheckOut.setTime(CheckOutDate); if (tokenNo!=null) { String creditCardType=request.getParameter("cmbCreditCardType"); String creditCardNo=request.getParameter("txtCreditCardNo"); GalaxyWebServiceImpl galaxyWS; galaxyWS=new GalaxyWebServiceImpl(); if(galaxyWS.ValidateCreditCard(creditCardNo.toUpperCase().trim(),creditCardType.trim())) { //int roomNo=Integer.parseInt(request.getParameter("RoomNo"));

- 38 -

Page 39: HotelFrozenGalaxyReservation System Testing

String custName=request.getParameter("txtCustName"); String address=request.getParameter("txtAddress");

String phone=request.getParameter("txtPhone")+request.getParameter("txtPhone1")+request.getParameter("txtPhone2"); //int advance = Integer.valueOf(request.getParameter("txtAdvance"))); //out.write(tokenNo+"---"+roomNo+"---"+custName+"---"+address+"---"+phone);

//java.text.SimpleDateFormat d = new java.text.SimpleDateFormat("yyyy-mm-dd"); //Date checkInDate=d.parse(request.getParameter("idays")+"-"+request.getParameter("imonths")+"-"+request.getParameter("iyears")); //checkInDate=request.getParameter("FromDate").toString(); //Date checkOutDate=d.parse(request.getParameter("odays")+"-"+request.getParameter("omonths")+"-"+request.getParameter("oyears")); //checkOutDate=request.getParameter("ToDate").toString();

float advance=Float.parseFloat(request.getParameter("txtAdvance"));

try { //String SqlStmt="INSERT INTO Reservation(TokenNo,RoomNo,CustName,Address,Phone,CheckInDate,CheckOutDate,CCType,CCNo,Advance) values('"+tokenNo+"',"+RoomNo+",'"+custName+"','"+address+"','"+phone+"','"+clnCheckIn.getTime()+"','"+clnCheckO.getTime()+"','"+creditCardType+"','"+creditCardNo+"',"+advance+")"; //String SqlStmt="INSERT INTO Reservation(TokenNo,RoomNo,CustName,Address,Phone,CheckInDate,CheckOutDate,CCType,CCNo,Advance) values('"+tokenNo+"',"+RoomNo+",'"+custName+"','"+address+"','"+phone+"','"+request.getParameter("FromDate").toString())+"','"+request.getParameter("ToDate").toString())+"','"+creditCardType+"','"+creditCardNo+"',"+advance+")"; //String SqlStmt="INSERT INTO Reservation(TokenNo,RoomNo,CustName,Address,Phone,CCType,CCNo,Advance) values('"+tokenNo+"',"+RoomNo+",'"+custName+"','"+address+"','"+phone+"','"+creditCardType+"','"+creditCardNo+"',"+advance+")"; String SqlStmt="INSERT INTO Reservation(TokenNo,RoomNo,CustName,Address,Phone,CheckInDate,CheckOutDate,CCType,CCNo,Advance) values('"+tokenNo+"',"+RoomNo+",'"+custName+"','"+address+"','"+phone+"','"+request.getParameter("FromDate").toString()+"','"+request.getParameter("ToDate").toString()+"','"+creditCardType+"','"+creditCardNo+"',"+advance+")"; //'"+checkInDate+"','"+checkOutDate+"',,CheckInDate,CheckOutDate //String SqlStmt1="UPDATE RoomMaster SET Status='Reserved', CheckInDate='"+request.getParameter("FromDate").toString()+"', CheckOutDate='"+request.getParameter("ToDate").toString()+"' where RoomNo="+RoomNo; //out.write(SqlStmt1); out.write(ConnectToDatabase.ExecuteQueryWithResponse(SqlStmt)); showMsg=("Selected Room Is Reserved!!!" + " The Generated Token No Is '"+tokenNo+"'. Please keep the Token Number for your future reference and communication. "); } catch(Exception e){ out.write(e.getMessage()); out.write("Sql Server Error"); }

//out.write(tokenNo+"---"+roomNo+"---"+custName+"---"+address+"---"+phone+"---"+creditCardType+"---"+creditCardNo+"---"+advance+"---"+checkInDate+"---"+checkOutDate); } else{ out.write("Credit Card No Is Not Valid!!!");

- 39 -

Page 40: HotelFrozenGalaxyReservation System Testing

} //clnCheckOut.get(Calendar.MONTH) } %> <script> function GenTokenNo() {

if(frmReservation.txtCustName.value.length==0){alert("Please Enter Customer Name!!!");return;}

frmReservation.txtTokenNo.value=(frmReservation.txtCustName.value.charAt(0).toUpperCase()+frmReservation.txtCustName.value.charAt(1).toUpperCase()+frmReservation.RoomNo.value+"<%=strCheckInDate%>"); } function Reserve() { if(frmReservation.txtCustName.value.length==0) { alert("Customer Name Should Not Be Blank!!!"); return(0); } if(frmReservation.txtAddress.value.length==0) { alert("Address Should Not Be Blank!!!"); return(0); }

if (isNaN(frmReservation.txtPhone.value)) {

alert("Phone no can not be Non Numeric!!!");return(0);

} if (isNaN(frmReservation.txtPhone1.value)) {

alert("Phone no can not be Non Numeric!!!");return(0);

} if (isNaN(frmReservation.txtPhone2.value)) {

alert("Phone no can not be Non Numeric!!!");return(0);

} if (frmReservation.txtPhone.value.length>3) {

alert("First TextBox Of Phone Number Should not be Greater Than 3 Digits!!!");

return(0); }

if (frmReservation.txtPhone1.value.length>3) {

alert("Second TextBox Of Phone Number Should not be Greater Than 3 Digits!!!");

return(0); }

if (frmReservation.txtPhone2.value.length>9) {

alert("Third TextBox Of Phone Number Should not be Greater Than 9

- 40 -

Page 41: HotelFrozenGalaxyReservation System Testing

Digits!!!");return(0);

} if(frmReservation.txtCreditCardNo.value.length==0)

{ alert("Credit Card No Should Not Be Blank!!!"); return(0); }

if (isNaN(frmReservation.txtCreditCardNo.value)) {

alert("Credit Card No cannot be Non Numeric!!!");

return(0);}

GenTokenNo(); frmReservation.submit(); }

</script> </head> <body MS_POSITIONING="GridLayout" bgcolor=LightYellow> <%if(showMsg!=null) { out.write(showMsg); } else {%>

<h1>Room Reservation Page</h1><hr><form name="frmReservation" method="post">

<table><!--<tr>

<td>Token No :</td><td>

<input type="text" name="txtTokenNo"></td></tr>--><tr>

<td>Room No :</td><td>

<input type=text id="RoomNo" name="RoomNo" disabled > <input type="hidden" name="txtTokenNo"></td>

<script>frmReservation.RoomNo.value=<%=RoomNo

%>;</script>

</td></tr><tr>

<td>Customer Name :</td><td>

<input type="text" id="txtCustName" name="txtCustName"></td>

</tr><tr>

<td>Address :</td><td><input type="text" id="txtAddress"

- 41 -

Page 42: HotelFrozenGalaxyReservation System Testing

name="txtAddress"></td></tr><tr>

<td>Phone :</td><td>

<input type="text" id="txtPhone" name="txtPhone" size="3">

<input type="text" id="txtPhone1" name="txtPhone1" size="3"> <input type="text" id="txtPhone2" name="txtPhone2" size="9">

</td></tr><tr>

<td>Checkin Date :</td><td><input type=text id="FromDate"

name="txtFromDate" value="<%=request.getParameter("FromDate").toString()%>" disabled></td>

</tr>

<tr><td>Checkout Date :</td><td><input type=text id="txtToDate" name="ToDate"

value="<%=request.getParameter("ToDate").toString()%>" disabled></td>

</tr><tr>

<td>Credit Card Type :</td><td><select id="cmbCreditCardType"

name="cmbCreditCardType" width="20"><option value="MASTER"

selected>MASTER</option><option value="VISA">VISA</option><option

value="AMERICAN">AMERICAN</option></select></td>

</tr><tr>

<td>Credit Card No :</td><td><input type="text" id="txtCreditCardNo"

name="txtCreditCardNo"></td></tr><tr>

<td>Amount(In $):</td><td>

<% try{ String SqlStmt="Select Charge from RoomMaster where RoomNo="+RoomNo+""; //out.write(SqlStmt); ResultSet rsAdvance=ConnectToDatabase.GetResults(SqlStmt); while(rsAdvance.next()) Advance=(Float.parseFloat(rsAdvance.getString("Charge"))); //out.write("Advance is " + Advance); } catch(SQLException ex){out.write("\n SQL Exception during validation"+ex.toString());} %> <input type="text" id="txtAdvance1" name="txtAdvance1" value=<%=Advance%> disabled> <input type="hidden" id="txtAdvance" name="txtAdvance"></td>

- 42 -

Page 43: HotelFrozenGalaxyReservation System Testing

<script> var fromdate=new Date(frmReservation.txtFromDate.value); var todate=new Date(frmReservation.txtToDate.value); var advance=parseFloat('<%=Advance%>'); var totday=((todate.getTime()-fromdate.getTime())/(24*60*60*1000)); if (totday==0) { frmReservation.txtAdvance1.value=advance; frmReservation.txtAdvance.value=advance; } else { frmReservation.txtAdvance1.value =((todate.getTime()-fromdate.getTime())/(24*60*60*1000))*advance; frmReservation.txtAdvance.value =((todate.getTime()-fromdate.getTime())/(24*60*60*1000))*advance; } </script>

</tr><tr>

<td colspan="2"><hr>

</td></tr>

<tr> <td></td>

<td><input type="button" name="btnReserve"

value="Reserve" onclick="Reserve();"></td>

</tr> </table>

</form> <%}%>

</body> </html>

VACANT ROOMClick on View tab and select Vacant RoomVerify if the following screen appears

- 43 -

Page 44: HotelFrozenGalaxyReservation System Testing

Enter from date as 05/11/2011Enter to date as 05/12/2011Click on submit button to see the vacant room report.Verify the report that shows the vacant room list.<%@page contentType="text/html"%><%@page pageEncoding="UTF-8"%><%@page import="java.util.*"%><%@page import="java.lang.*"%><%@page import="java.sql.*"%><%@page import="GalaxyHotelReservation.ConnectToDatabase"%><%--The taglib directive below imports the JSTL library. If you uncomment it,you must also add the JSTL library to the project. The Add Library... actionon Libraries node in Projects view can be used to add the JSTL 1.1 library.--%><%--<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> --%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <LINK media="screen" href="DatePicker_Sheet.css" type="text/css" rel="StyleSheet">

<SCRIPT language="JavaScript" src="DatePicker.js"></SCRIPT>

<title>Vacant Room Reports</title> <% java.util.Date FromDate=null; java.util.Date ToDate=null;

- 44 -

Page 45: HotelFrozenGalaxyReservation System Testing

%> <script> var mode; var fromDate,toDate; function MenuItemClick(RoomNo,FromDate,ToDate) { frmRoom.action='Reservation.jsp?RoomNo='+RoomNo+'&FromDate='+FromDate+'&ToDate='+ToDate; //alert(frmRoom.action); frmRoom.submit(); } function ShowStatus() {

if(frmRoom.txtdatefrom.value.length==0 || frmRoom.txtdateto.value.length==0) alert("From Date or To Date Can Not Be Empty");

else { fromDate=frmRoom.txtdatefrom.value;

toDate=frmRoom.txtdateto.value;if (new Date(fromDate) > new Date (toDate)){alert("From Date Can Not Be Greater Than To Date");return 0;}

frmRoom.action='VacantRoomReports.jsp?TypeOfRoom='+frmRoom.RoomType.value+'&FromDate='+fromDate+'&ToDate='+toDate; //alert(frmRoom.action); frmRoom.submit(); } }

</script> </head> <body bgcolor=LightYellow>

<hr><form name="frmRoom" method="post">

<h2><u>Vacant Room Reports</u></h2><br><table border="0">

<tr><td>Type:</td><td><select id="RoomType" name="RoomType"

width="10"><option value="Economic"

selected>Economic</option><option

value="Executive">Executive</option><option

value="Presidential">Presidential</option></select></td>

</tr><tr>

<td>From Date:</td><td><input id="txtdatefrom" style="WIDTH: 93px"

readOnly type="text" maxLength="12" name="txtdatefrom"size="10">

<img name="CmdShowStart" onclick="displayDatePicker('txtdatefrom', this,'mdy','/');" src="cal.jpg">

</td></tr><tr>

- 45 -

Page 46: HotelFrozenGalaxyReservation System Testing

<td>To Date:</td><td><input id="txtdateto" style="WIDTH: 93px" readOnly

type="text" maxLength="12" name="txtdateto"><img name="CmdShowStart"

onclick="displayDatePicker('txtdateto', this,'mdy','/');" src="cal.jpg"></td>

</tr></table><P>

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <input name="btnNewRoom" type="button" value="Show Status" onclick="ShowStatus();">

<hr><%

int rn = 0; String RType = request.getParameter("TypeOfRoom"); if (request.getParameter("FromDate")!=null) { java.text.SimpleDateFormat d = new java.text.SimpleDateFormat("mm/dd/yyyy"); FromDate=d.parse(request.getParameter("FromDate").toString()); ToDate=d.parse(request.getParameter("ToDate").toString()); //out.print("From Date is " + request.getParameter("FromDate").toString()); //out.print("To Date is " + request.getParameter("ToDate").toString()); Calendar clnKFrom,clnKTo; clnKFrom=Calendar.getInstance(Locale.getDefault()); clnKTo=Calendar.getInstance(Locale.getDefault()); clnKFrom.setTime(FromDate); clnKTo.setTime(ToDate); //out.print("month is "+clnKFrom.get(Calendar.MONTH)); %>

<script> frmRoom.RoomType.value="<%=RType%>"; frmRoom.txtdatefrom.value='<%=request.getParameter("FromDate").toString()%>'; frmRoom.txtdateto.value='<%=request.getParameter("ToDate").toString()%>';

//frmRoom.idays.selectedIndex=<%=(Integer.parseInt(request.getParameter("FromDate").toString().substring(3,5))-1)%>;

//frmRoom.odays.selectedIndex=<%=(Integer.parseInt(request.getParameter("ToDate").toString().substring(3,5))-1)%>;

//frmRoom.imonths.selectedIndex=<%=(Integer.parseInt(request.getParameter("FromDate").toString().substring(0,2))-1)%>;

//frmRoom.omonths.selectedIndex=<%=(Integer.parseInt(request.getParameter("ToDate").toString().substring(0,2))-1)%>;

</script><%%>

<% try{ if (clnKFrom.get(Calendar.YEAR)!=1) { //String SqlStmt = "Select * from RoomMaster where Type='" + RType + "' and (('" + clnKFrom.get(Calendar.MONTH) + "/" + clnKFrom.get(Calendar.DATE) + "/" + clnKFrom.get(Calendar.YEAR) + "'>CheckOutDate or '" + clnKTo.get(Calendar.MONTH) + "/" + clnKTo.get(Calendar.DATE) + "/" + clnKTo.get(Calendar.YEAR) + "'<CheckInDate) or (checkInDate is null and checkOutDate is null))";

- 46 -

Page 47: HotelFrozenGalaxyReservation System Testing

//String SqlStmt = "Select * from RoomMaster where Type='" + RType + "' and (('" + request.getParameter("FromDate").toString() + "'>CheckOutDate or '" + request.getParameter("ToDate").toString(); //out.write(SqlStmt); //String SqlStmt="Select * from RoomMaster where Type='" + RType+"'"; //String SqlStmt="Select * from RoomMaster where Type='" + RType + "' and (('" + request.getParameter("FromDate").toString() + "'>CheckOutDate or '" + request.getParameter("ToDate").toString()+"'<CheckInDate) or (checkInDate is null and checkOutDate is null))"; String SqlStmt="select * from RoomMaster where Type='" + RType + "' and RoomNo Not In(select RoomNo from reservation where Status is null and ( CheckOutDate > '" + request.getParameter("FromDate").toString() + "' and CheckInDate < '" + request.getParameter("ToDate").toString() + "'))"; //String stmt="sdfsdfs<CheckInDate) or (checkInDate is><"; //out.write(SqlStmt);

ResultSet RoomsAll = ConnectToDatabase.GetResults(SqlStmt); //out.write("\nTotal Rows Are " + RoomsAll.getRow()); //if (RoomsAll.getRow()!=0) //{%> <P></P>

<table width="400"><tr>

<th width="50">RoomNo</th><th

width="50">Date_From</th><th width="50">To_Date</th></tr> <%

//int i = 0; //Date CheckInDate,CheckOutDate; int i=0; while(RoomsAll.next()) { rn = Integer.parseInt(RoomsAll.getString("RoomNo")); //CheckInDate = RoomsAll.getString("CheckInDate"); //CheckOutDate = RoomsAll.getString("CheckOutDate");

%> <tr> <td width="50"><a href="javascript: MenuItemClick(<%=rn%>,'<%=request.getParameter("FromDate").toString()%>','<%=request.getParameter("FromDate").toString()%>')"><%=rn%></a></td> <td width="50"><%=request.getParameter("FromDate").toString()%></td> <td width="50"><%=request.getParameter("ToDate").toString()%></td> </tr> <% i++; } %>

</table><hr><b>

<%if(i!=0){%> <%=i%>&nbsp Room(s) is(are) Vacant.</b> <%} else{%> No Room Is Vacant During Specified Period.

- 47 -

Page 48: HotelFrozenGalaxyReservation System Testing

<%}%></b> <% //} } } catch(SQLException ex){System.out.println("\n SQL Exception during validation"+ex.toString());} catch(Exception ex){out.write(ex.getMessage());} } %>

</form></body>

</html>

WELCOME

<%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean" %><%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html" %><%@ taglib uri="http://jakarta.apache.org/struts/tags-logic" prefix="logic" %>

<html: html locale="true"><head><title><bean: message key="welcome.title"/></title><html: base/></head><body bgcolor="white">

<logic: notPresent name="org.apache.struts.action.MESSAGE" scope="application"> <font color="red"> ERROR: Application resources not loaded -- check servlet container logs for error messages. </font></logic: notPresent>

<h3><bean: message key="welcome.heading"/></h3><p><bean: message key="welcome.message"/></p>

</body></html: html>

Test Report

The system testing for the web based results conducted successfully and some of the

failures are shown below. A defect report has been given at the end.

- 48 -

Page 49: HotelFrozenGalaxyReservation System Testing

Reservation status report display not appearing to due to set up error. The above defect is

included in the test defect report below.

Defect report

Project

name

Version Module Defect ID Severity Priority Status Assigned

to

Developers

name

Detected

by

Hotel

Galaxy

Reservation

System

2.1001 Login TLTS_Login_OK Medium Medium Open Rajesh Rajesh Chandra

- 49 -

Page 50: HotelFrozenGalaxyReservation System Testing

Performance testing report

To observe system behavior and to gather data and metrics around the

performance of the software, this testing is done. The main objective behind this

testing is to gather user transactions and various scenarios, peak activity periods.

To determine the maximum number of users for the system, its response

time and to discover optimum configuration for this system, this testing is

conducted.

Following are the major types of tests conducted on the reservation

system.

Load testing to determine the response time of critical processes and

transactions to determine if they are with in the documented expectations.

Volume testing to determine throughput associated with specific process

or transactions.

Stress test to determine the load under which the system fails and how it

fails, Longevity and endurance testing to identify the performance issues that may

appear after the system has been running at a high level for an extended period of

time.

The testing was conducted using Rational performance tester, creating a

simulated environment by recording critical transactions and functions. Later the

performance testing scripts were modified to adjust the system for the

performance testing.

The result of the performance testing for the system under testing has been

with in the documented expectation. All critical functions are responding with in 5

milliseconds as expected. The system takes more than 500 hits per seconds as the

expected hits it should take is only 300 at any given point of time. The system

- 50 -

Page 51: HotelFrozenGalaxyReservation System Testing

works for more than a day at the peak load of 500 users per seconds which again

is well above the documented expectation of 3 days.

- 51 -