1 Test Items
The following items are to be
tested:
·
Student
interface
·
Manager
interface
·
Lottery
functionality
2 Software Risk Items
There are several risks in the testing
I.
The
limited amount of stress we can produce on the system
The
three group members will never be able to duplicate the amount of activity and
stress that an entire student body would be able to. To compensate, we will unit test each individual function
and ensure it handles as much use as we can give it.
II.
It is
impossible to please everyone with this system.
To
paraphrase President Abraham Lincoln: “you can please some of the people all of
the time and all of the people some of the time but you can't please all of the
people all of the time.” As such,
we will try to make the system as user-friendly and please as many users as
possible.
3 Features To Be Tested
The following features of the
project need to be tested:
·
Student
login.
·
Student
interface performance (register for, decline, accept tickets, etc).
·
Manager
interface performance (edit seats, create/remove lottery, run lottery, etc).
·
System
functionality (run lottery, assign seats, etc)
·
Error
handling.
3.1 Approach
No testing
tools are available. All test
levels shall be implemented manually. The three levels of testing are based on a bottom-up approach and shall
verify the project functionality.
3.1.1 Unit Testing
A
unit test will be created for each lower level function in the project. Each method will be tested rigorously
before being declared acceptable for passing.
Unit
testing will be designed and implemented by the development team. Test cases list, output, defect
information shall be documented and reported. Test cases should be run against each method in the system
and should cover all the critical branches.
3.1.2 Integration Testing
Integration
testing will be done when the program components come together. Much like unit testing, integration
testing will be performed by the development team and will be performed upon
the completion of each method.
3.1.3 System Testing
Most of the system testing will be done by the customer, with any
uncovered bugs or errors being fixed by the development team. However, the project will not be
delivered without some testing at least. The development team will test all functionality and any potential
sources of error they can think of, but will not be expected to find every
possible error. Therefore the
customer will alert the team whenever an error is found and a prompt fix will
be delivered.
3.2 Measures and Metrics
The following information will be
collected and documented through all testing phases:
1.
Defects by
module and severity
2.
Defect
origin
3.
Time spent
on defect
3.3 Bug Reports
Bugs will be reported in the
following format:
Test Id: The test
id given according to the test performed.
Severity:
1.
Chernobyl-level
disaster. System crashes to a
halt.
2.
Tsunami. Stops development and testing.
3.
Train
Wreck. Stops progress of other
modules.
4.
Paper
Cut. Stops own
progress, but doesn't affect other modules.
5.
Workout
Plan. Nothing broken, adding
functionality. Enhancement.
Description:
Description of the bug, including steps to replicate.
Status:
Open:
Bug is being worked on.
Closed:
Bug is known but has not been addressed yet.
3.4 Test Cases
3.4.1
Unit Test Cases
Test No
|
Test Id
|
Tester
|
Init State
|
Test
|
Expected Result
|
Actual Result
|
Pass/Fail
|
1
|
Student_Login
|
Keith
|
Logged out
|
See Test Id
|
Successful Login
|
Successful Login
|
Pass
|
2
|
Lottery_Register
|
Keith
|
Not Registered
|
See Test Id
|
Successful Register
|
Successful Register
|
Pass
|
3
|
Reg_as_Individual
|
Keith
|
Not Registered
|
See Test Id
|
Successful Register
|
Successful Register
|
Pass
|
4
|
Reg_with_Group
|
Keith
|
Not Registered
|
See Test Id
|
Successful Register
|
Successful Register
|
Pass
|
5
|
Reg_Create_Group
|
Keith
|
Not Registered
|
See Test Id
|
Successful Register
|
Successful Register
|
Pass
|
6
|
Show_Lottery_History
|
Keith
|
Logged in
|
See Test Id
|
Info on each lottery
|
Info on each lottery
|
Pass
|
7
|
Decline_Tickets
|
Keith
|
Won lottery
|
See Test Id
|
Tickets Declined
|
Tickets Declined
|
Pass
|
8
|
Search_For_Tickets
|
Keith
|
Tickets Leftover
|
See Test Id
|
Tickets Found
|
Nothing
|
Fail
|
9
|
Claim_Tickets
|
Keith
|
Won lottery
|
See Test Id
|
Tickets Claimed
|
Tickets Claimed
|
Pass
|
10
|
Student_Logout
|
Keith
|
Logged in
|
See Test Id
|
Successful Logout
|
Successful Logout
|
Pass
|
11
|
Login_From_One_Loc
|
Keith
|
Logged in
|
See Test Id
|
Logout on initial login
|
Successful Logout
|
Pass
|
12
|
Manager_Login
|
Jennifer
|
Logged out
|
See Test Id
|
Successful Login
|
Successful Login
|
Pass
|
13
|
Add_Event
|
Jennifer
|
Logged in
|
See Test Id
|
Event Added
|
Event Added
|
Pass
|
14
|
Modify_Event
|
Jennifer
|
Logged in
|
See Test Id
|
Event Modified
|
Event Modified
|
Pass
|
15
|
Edit_Venue_Info
|
Jennifer
|
Logged in
|
See Test Id
|
Info Modified
|
Info Modified
|
Pass
|
16
|
Check_Venue_Input
|
Jennifer
|
Logged in
|
See Test Id
|
Correct Syntax
|
Correct Syntax
|
Pass
|
17
|
Add_Venue_Sections
|
Jennifer
|
Logged in
|
See Test Id
|
Section Added
|
Section Added
|
Pass
|
18
|
Manage_Seats
|
Jennifer
|
Logged in
|
See Test Id
|
Rows added, delete selected, undo, save
|
Rows added, delete selected, undo, save
|
Pass
|
19
|
Finished_Goes_Home
|
Jennifer
|
Edit venue screen
|
See Test Id
|
Home Page
|
Home Page
|
Pass
|
20
|
Manager_Logout
|
Jennifer
|
Logged in
|
See Test Id
|
Successful Logout
|
Successful Logout
|
Pass
|
21
|
Login_From_One_Loc_Mgr
|
Jennifer
|
Logged in
|
See Test Id
|
Logout on initial Login
|
Successful Logout
|
Pass
|
22
|
Weighted_Random
|
Jennifer
|
Samples with weights
|
See Test Id
|
Higher weight yield better tickets
|
Higher weight yield better tickets
|
Pass
|
3.4.2
Integration Testing
Test No
|
Test Id
|
Tester
|
Init State
|
Test
|
Expected Result
|
Actual Result
|
Pass/Fail
|
1
|
Run_Lottery_Calls_Correctly
|
Andrew
|
None
|
See Test Id
|
Lottery Runs Fine
|
Lottery Runs Fine
|
Pass
|
2
|
Lottery_Accepts_Seats
|
Andrew
|
None
|
See Test Id
|
Seats Distributed Correctly
|
Seats Distributed Correctly
|
Pass
|
3
|
Lottery_Assigns_to_Registered
|
Andrew
|
None
|
See Test Id
|
Only Registered Get Tickets
|
Only Registered Get Tickets
|
Pass
|
3.4.3
System Testing
The
development team will perform system testing by testing all previous tests once
the system is declared stable and ready for shipment. Ideally, once shipped, any errors encountered by the
customer will be minor, and will be fixed by the team in a timely manner.
3.5 Reported Bugs
Test Id
|
Severity
|
Status
|
Description
|
Tester
|
8
|
5
|
Open
|
Search for tickets is not implemented yet
|
Keith
|
4
|
4
|
Open
|
Student Register for Lottery → Registerable → Register → With existing group
→ Search, then close window → bring back, window not sized
properly
|
Keith
|