Lab 6 (10 points)
February 23-24, 2010

Laboratory Assignment #6
Testing your Hash Table Class

Due: at 11:59 pm on the day of your lab session


This week, we will use the laboratory time to work on Part 1 of Programming Assignment #5, in particular, to test your Hash Table class.

Getting Started

1.      Sign the attendance sheet.

2.      Open your Hash Table Class for Part 1 of Programming Assignment #5. If you have not already started your test program for your Class and its methods, collaborate with your neighbor to begin one now. If you have already started, compare notes to see what both of you need to test.

3.      Together, write out what kinds of strings and how many of them you need to test your classes. You may put this in a text file or in the code of a test program. Ideally, you should each be able to use the same strings to test both your Class and that of your neighbor. Specifically, identify in your code (whether it is complete or not) what special cases you need to test all of the different methods of your Hash Table class and all of the branch conditions.

For example, you need to make sure that your Hash Table can store more than one string in the same bucket by linking them together in a linked list. For this, you could create a Hash Table with only three buckets and give it at least four strings, so that one of them is bound to end up in the same bucket as another.

Do the same for all of your methods and all of the branch paths that each method could take.

4.      To get credit for this lab, submit the file of strings or your test program, along with an annotation of each string as to what aspect of the Hash Table Class it is testing:

/cs/bin/turnin submit cs2303 LAB6 <your zip file>

Be sure to put your name in a comment at the top of each of your header and code files.


This is the last formal lab session of the term. Good luck on the final project and the final exam!