Note: If there are asterisks; please look at the last page for more information. Use Case Functionality being tested Initial System State Input Expected Results Actual Results Rent Adding items to list of items Database includes at least one customer and copies of both types of item (ordinary rental and rent to own) with di erent rental charges for each Valid customer ID and valid copy ID’s for both type of item Total charges correct; list of items is updated to show the items entered Correct, except that the copy id text eld shrinks after the rst copy is added. Rent Remove added At least one Select a copy and “Remove” button is copy copy added to click “Remove” disabled until a copy is the list of copies button selected; the selected to rent; no copy copy is removed from selected yet the list; total charges and list of copies are updated Rent Clear all copies More than 2 Click “Clear All” copies added to button the list ot copies to rent The list of copies to rent Correct is empty now, total charge updated to 0 Rent Normal rental Status check for each copy shows it is rented to the correct customer with the correct due There are items in the list of items Click “Rent All” button Correct Correct date (the rental period for ordinary rental items and 30 days later for rent to own items) Rent Cancel renting a copy Rent On rent details card Click “Cancel” button Goes back to the rent pane Correct Renting a copy On the rent that is already details card rented out Enter the ID of a copy that has been rented to other customer System displays an Correct error message that copy is already rented out Rent Error in adding GUI on the rent a copy to rent details card Invalid copy ID (string instead of numbers) System displays an Mostly correct; an error message that copy error message is id is invalid displayed, but the content is not clear about what is wrong with the input. Return Normal return On the return pane Valid ID of copy that has been rented out Message shown to indicate the completion of return; status check for the copy shows now on shelf Return Error in returning copy that is not rented out On the return pane Valid ID of copy Message returns that that is not rented the copy is not rented to anyone out Mostly correct. No message is displayed to indicate the completion of return, but status check shows the copy is on shelf. Correct Payment Calculate the payment needed for a rented copy On the payment pane; “Make Payment” button is disabled Enter a valid ID for a copy rented and click “Calculate Amount” button The correct amount of payment shown on the screen; check with the inventory and the correct amount is calculated; “Make Payment” button is not enabled Correct Payment Normal make payment The amount needed is calculated Click “Make Payment” button Message returns the updated due date calculated based on the previous due date; status check shows the date due updated as well; Correct Payment Error in On payment entering an pane invalid copy ID Enter an invalid copy ID (a random string), and click “Calculate Amount” button Message returns that the copy id is invalid Correct Payment Error in making On payment payment for pane copy on shelf Enter ID for a copy that is currently on shelf; click “Calculate Amount” button; click “Make Payment” button Message returns that the copy is currently on shelf and cannot be paid for. Correct Status Normal status check on copy System is on, at least one copy that is rented out exists in database Enter copy id of a copy that is rented out, click “Check Status” button Message returns the Correct description the rentable item is a copy of, checkout status: rented, and who the copy is rented out to. Check by trying to rent the copy: you should not able to add it to the copies list on the rent details card GUI because it is already rented out. Status Normal status check on copy System is on, at least one copy that is on shelf exists in database Enter copy id of a copy that is on shelf, click “Check Status” button Message returns the Correct description the rentable item is a copy of, checkout status: on shelf. Check by trying to rent the copy: you should be able to add it to the copies list on the rent details card GUI. Status Status check on copy that does not exist on database System is on, at least one copy exists in database Enter any positive integer that is not yet assigned or a non-positive integer input, click “Check Status” button Error message returns Correct that copy does not exist in database. Save Saving data Software is on, new information has been added to database, and customer report and rentable item report has been made to make note of the new information. Select “Save” or “Quit” or the close X of the program window. Software saves data Correct (and closes if “Quit” or X is selected). The newly added information is recalled when you relaunch the program: check by the customer report, rentable item report, rentable item list on the inventory pane, customer list on customer pane, or status check on copies that were just rented out prior to shutdown. Information before and after shutdown should be the same. Add Customer Adding a customer On “Customer Information” form after clicking “Add New Customer” button on the customers pane Enter in all needed information in its valid format (i.e. phone number, name, etc.), click “Add Customer” button GUI returns to Correct customers pane, which now shows the newly added customer with the information that corresponds to the input information Add Customer Cancel adding a customer On “Customer Information” form after clicking “Add Enter in all needed information in its valid format (i.e. Customers pane shows no change as no customer was added. Correct New Customer” button on the customers pane phone number, name, etc.), click “Cancel” button Add Customer Error in adding On “Customer customer Information” form after clicking “Add New Customer” button on the customers pane Needed information is lacking or in invalid format; click “Add Customer” Error message is shown, customer with lacking/invalid information is not added to the list of customers as shown on the customers pane. Correct; “Add Customer” button remains disabled until all required elds are lled out. If input has incorrect format, error message is shown (as expected). Add Customer Phone number is unique ID of customers; customers of same phone number cannot be added On “Customer Information” form, at least one customer is on database Enter in all needed information in its valid format, but with the phone number the same as a customer that is already on the database Customer is not added to the list of customers as shown on the customers pane; error is thrown that customers cannot have the same phone number Correct; error messages states “Customer already exists.” Add Rentable Item Adding rentable item of ordinary rental item type Manager logged in; on Add Ordinary Rental Item form after clicking “Add Ordinary Rental Item” button on Inventory pane Enter in all needed information in its valid format (description , rental charges, rental period), click “Add” GUI returns to Inventory Correct pane, which now shows the newly added ordinary rental item with the information that corresponds to the input information button Add Rentable Item Adding rentable item of rent-to-own type Manager logged in; on Add Rent-to-Own Item form after clicking “Add Rent-to-Own Item” button on Inventory pane Enter in all needed information in its valid format (description , monthly payments, and number of payments), click “Add” button GUI returns to Inventory pane, which now shows the newly added rent-to-own item with the information that corresponds to the input information Incorrect labeling: inventory pane’s list of rentable items displays a rent-to-own item’s description, charges, and “Rental Time: X” where X is the number of payments. Otherwise correct. Add Rentable Item All required details must be given in the correct format to create a new rentable item Manager logged in; on either rent-to-own or ordinary rentable item form Needed information is lacking or in invalid format; click “Add” button Error message detailing incorrect/ incomplete input is shown, rentable item with lacking/invalid information is not added to the rentable item list as shown on the inventory pane. Mostly correct; “Add” button remains disabled until all required elds are lled out. If rental period or number of payments is not a positive integer, error message is shown. If rental charges is not a number, the error message says “Rental charges is not a positive integer”, but it accepts double numbers too. Add Rentable Duplicate rentable items Manager logged Enter in all in; inventory has needed Error message detailing duplicate item cannot Correct Item (both types) cannot exist on database at least one rentable item of both types; on either rent-to-own or ordinary rentable item form information with valid format, but of same description as a rentable item already on the inventory list (of same type) exist is shown; rentable item of same description is not added to the rentable item list as shown on the inventory pane. Add Rentable Item Canceling adding rentable item (both types) Manager logged in; on either adding rent-to-own or ordinary rentable item form Enter in all needed information with valid format, click “Cancel” button Inventory pane’s list of Correct rentable items shows no change as no rentable item was added. Add Copy Adding copies of a certain rentable item Software just turned on, manager logged in; on inventory pane; a rentable item is selected Enter in positive integer number of copies, click “Add Copies” button Message details added copies and their corresponding ID’s. Status check on the Copy Status with those ID numbers show that we now have a copy(ies) that we added in the database and the status is on shelf. Everything is correct except one crucial point: every time we run the software, the copy ID generated by the code resets to 1 instead of the next copy ID. So we could have 300 copies saved on the database, but if we quit the program and restart it, whatever copies you add next will be assigned ID numbers will start from 1 and you will be overwriting on your existing list of copies.*** Add Copy Error in adding Manager logged Do not select a copies in; on inventory rentable item pane and/or enter a number of copies of the wrong format (i.e. a negative number or a letter) Error message shows that rentable item must be selected and/or input of numbers of copies to be added must be correct input. Status check of copies with ID numbers greater than most recently added copies show that they do not exist; no copies have been added to database Mostly correct; unless a rentable item is selected and the eld for quantity is not lled out, the “Add Copies” button remains disabled. Add copy Copy cannot be added when not logged in Right after Click “Add manager logged Copies” out when rentable item was selected and quantity is lled out Error message shows copy cannot be added because there is no manager access. Incorrect. As long as you do not click anywhere else but “Add Copies” button, you can still add copies after you log out as the add copies button is still enabled. **** Customer Report Produces customer Manager logged Click “Produce in; database Customer Console prints out list of Correct customers and report with includes at least Report” button correct one customer; on Reports pane personal information (name, address, phone number) information* in an appropriate manner; customer information is correct (corresponds to the information in the customers list on Customers pane). Customer Report Produces customer report with correct number of copies rented out Manager logged in; database includes at least one customer; customers have no copies rented out Click “Produce Customer Report” button on Reports pane Console prints out list of customers and information* in an appropriate manner; copies rented out is zero. Incorrect; report does not show total number of copies rented out by the customers. Customer Report Produces customer report with correct number of copies rented out Manager logged in; database includes at least one customer; customers have certain number of copies rented out. Click “Produce Customer Report” button on Reports pane Console prints out list of customers and information* in an appropriate manner; copies rented out corresponds to the number each customer rented out. Incorrect; report does not show total number of copies rented out by the customers. Customer Report Produces customer report with correct information about overdue item Manager logged in; database includes at least one customer; customers have copies rented out of which one Click “Produce Customer Report” button on Reports pane Console prints out list of Correct customers and information* in an appropriate manner; overdue details shown for each overdue copy but not for items that one is due today; and at least one due after today (date diddled to t this) Rentable Item Report Produces rentable item report with correct information Manager logged in; GUI on Reports pane; database includes at least one of each ordinary rental item and rent-to-own item type with of its copies both rented and on-shelf Click “Produce Rentable Items Report” button on Reports pane Console prints out list of Correct rentable items and information* in the database in an appropriate manner (corresponds to all items on the rentable item list in Inventory pane); copies rented out corresponds to the number rented out. Total number of copies equals number of copies rented + number of copies on shelf. Number of copies on hold is always zero (function not yet implemented). Rentable Item Report Produces rentable item report with correct information Manager logged in; GUI on Reports pane; database includes at least one of each ordinary rental item and rent-to-own item type; no Click “Produce Rentable Items Report” button on Reports pane Console prints out list of Correct rentable items and information* in an appropriate manner (corresponds to all items on the rentable item list in Inventory pane). Copies rented out is all zero; copies on shelf equals the total copies are rented out number of copies. Number of copies on hold is always zero (function not yet implemented). *: Customer information refers to customer’s name, phone number, address, total # of copies rented by customer **: Rentable item information refers to description, type, total number of copies owned, number of copies in stock, number of copies rented out, and number of copies on hold for some customer (on hold is always zero). ***: Since we’re doing black box testing it’s hard to tell, but I’m assuming that the code for generating copy IDs has a problem. Copy ID variable probably starts from 1 and adds increments of one, but the copy ID variable should start as the length of the copy list + 1 and go from there. ****: Observer pattern needed where immediate updates are shown to disable the “Add Copies” button when manager logs out, even if the position in the rentable items list is not changed and the quantity eld is lled out.
© Copyright 2026 Paperzz