

Spring Quarter 1997:Project Sponsor: Gregory Abowd |
Project Team:Jeffrey Corn (Manager) Travis Works (Architect) John Garrard (Programmer) Kesniel Acton (Technical Writer) Dinesh Krishna (Quality Assurance) |
Test Description: First, we will test the functionality of the food inventory lists. We will test this functionality by manually comparing the inventory lists returned by CyberFridge with the actual contents of the kitchen. If the list matches the actual contents exactly, then CyberFridge will have passed this test. If the list differs from the actual contents, then CyberFridge will have failed.
Secondly, we will test the ability of CyberFridge to return information about specific items. We will do this by selecting items from CyberFridge's inventory list using random dice rolls. One team member will then ask CyberFridge to return all information available about each randomly selected item. Another team member will manually determine all appropriate information about the selected items by retrieving the items from the inventory. If the information found by the two team members correspond to one another, CyberFridge will have passed this test. If the information does not correspond, CyberFridge will have failed this test. In addition, if CyberFridge does not return all information specified in the description of this function, CyberFridge will also have failed this test.
Next, we will test CyberFridge's ability to add new items to the food inventory. We will perform this test by asking a volunteer not involved in this project to select a list of items of their choice in a supermarket. We will then enter the items into the kitchen inventory, using an entry method randomly selected by die roll to enter each item. This will allow us to fairly test all possible methods by which CyberFridge is designed to accept entries. We will then ask CyberFridge to return a list of the current kitchen inventory. If the list includes all previous items, plus all of the newly added items, CyberFridge will have passed this test. If the list does not include all of the items, CyberFridge will have failed this test. If CyberFridge fails, we will be able to compare the list of excluded items to the entry method chosen to enter each item, to narrow the probable location of the error.
Lastly, we will test CyberFridge's ability to delete items from the food inventory. We will perform this test by randomly selecting items from the food inventory, using a die roll. We will then delete these items from the kitchen inventory, using a removal method randomly selected by die roll to remove each item. This will allow us to fairly test all possible methods by which CyberFridge is designed to remove items. We will then ask CyberFridge to return a list of the current kitchen inventory. If the list includes all non-removed items, and excludes all of the removed items, CyberFridge will have passed this test. If the list does not include or exclude all items appropriately, CyberFridge will have failed this test. If CyberFridge fails, we will be able to compare the list of erroneously included and excluded items to the removal method chosen for each item, to narrow the probable location of the error. There is one major boundary condition to test - namely, the empty inventory. We will test this condition in several steps. First, we will select from the inventory one item at random, using a die roll. We will remove all of the items except this one from the inventory, and ask CyberFridge for an inventory list. We will then remove the last remaining item from the inventory, asking for another inventory list afterward. We will then attempt to remove non-existent items from the inventory, using all removal methods in turn. CyberFridge should resist all of these attempts. We will ask CyberFridge for an inventory list after each attempt, but the contents should remain the same. We will then add a randomly selected item to the database, asking CyberFridge for an inventory list afterward. If CyberFridge returns the correct list for each attempt, it will have passed this test. If CyberFridge returns erroneous inventory lists for any part of this test, CyberFridge will have failed this test.
Results: This test is yet to be conducted.Tester:
Date Implemented:
Platform:
Comments:
Test Description: The tester will add a collection of 15 recipes (such as Chicken Curry, Beef Tacos, and Carrot Cake) divided into 3 categories, specifically Indian Food, South Western Food, and Deserts. He will then view each category to see if they contain the recipes. He will then delete the Carrot Cake recipe and modify the recipe for Beef Tacos so that it is a recipe for Chicken Tacos. Then He will review the categories again to see if the changes were made. For this test to be successful when the tester first views the categories they should contain the recipes he defined to be in each category, when he views the categories after modifying the recipes, the Carrot Cake recipe should no-longer be in any list, and the Beef Tacos recipe should be altered. Also, if he cannot view categories this test fails.
Results: This test is yet to be conducted.Tester:
Date Implemented:
Platform:
Comments:
Test Description: A tester or group member will attempt to extract a specific recipe, for example a french toast recipe, from our system. The system should return to the tester the french toast recipe if and only if all the necessary ingredients eggs, bread, milk, etc..) are currently present in the inventory. The recipe database will compare all the items in its inventory with the items needed to make french toast. A successful completion of this test would result in the french toast recipe being returned when all the ingredients listed above are in the inventory. If just one of the necessary items is not in our inventory then the recipe should not be returned to the tester.
In order to test the "grocery list" part of the requirement, the tester will deliberately request a recipe from the system for which he positively knows that at least one of the necessary ingredients are absent from the current inventory. For example, if the current inventory does not contain any eggs, then the tester will purposely request an omelette recipe from C.A.R.A. Thus, a successful test would result in eggs being returned as an item to be purchased at the grocery store before attempting to make an omelette.
Another aspect of this test is to determine the accuracy of C.A.R.A in updating the database in terms of certain criteria, such as favorite recipes, recipes for special occasions, recipes using or not using particular foods or most frequently-used recipe. Our tester will test this requirement by repeatedly requesting a bannana cream pie recipe over a period of time like one week. After the week elapses the tester can then ask for recipes by the criteria of frequently-used, and if the test were to succeed then the bannana cream pie recipe would appear in the frequently-used recipes list.
Results: This test is yet to be conducted.Tester:
Date Implemented:
Platform:
Comments:
Test Description: To conduct this test all the actions defined in the previous tests must be performed through the web interface. If the tester is unable to perform one of these functions, and that function did not fail in a previous test the test fails. If the function did fail in a previous test, this test shall be reperformed after that function has been fixed.
Results: This test is yet to be conducted.Tester:
Date Implemented:
Platform:
Comments:
Test Description: To perform this test our group will select 3 high school students and ask them to try to request a certain recipe, add a new recipe to the system or even try to find a popular recipe. If these 3 students are able to do these tasks through the use of C.A.R.A without any difficulty then this test has succeeded.
Results: This test is yet to be conducted.Tester:
Date Implemented:
Platform:
Comments:
Test Description: One of our group members will attempt to download the entire system after its completion using Netscape 3.x in the NT lab and if the system successfully loads without any problems in under 2 minutes then we have a positive result for this test.
Results: This test is yet to be conducted.Tester:
Date Implemented:
Platform:
Comments: